Created
March 21, 2022 13:50
-
-
Save gorangajic/6d4357abb4ce32c33ba1947ab79883b1 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"info": { | |
"title": "API interface for jobZology", | |
"version": "1.0.0", | |
"description": "## API REFERENCE\n\nThe jobZology/PathWay API is organized around REST, is designed to have predictable resource-oriented URLs.\nUses standard HTTP response codes, authentication, and verbs which can be understood by any HTTP client\nOur API mostly talks JSON. Only in some cases like image upload we use form-encoded for request bodies.\nCross-origin resource sharing is supported to allow you to interact securely with the API from a client-side web application.\n\n## Authentication:\n\n\nWhen accessing the API, the right credentials should be used. We use the HTTP built-in mechanism of sending an Authorization header that contains an access token.\n\n```\nAuthToken: <YOUR_TOKEN>\n```\n\nThe token can be obtained using authentication routes like login and signup or using LTI and ADFS authentication providers.\nAn authentication token is received from `AuthToken` responses header and it's updated on every request.\nAuthentication token time to live is 24 hours, so to keep your token alive you should update your authentication token on each request.\n\n\n## Errors\n\nThe jobZology API uses conventional HTTP response codes to indicate the success or failure of an API request. Codes in the `2xx` range indicate success. Codes in the `4xx` range indicate that some information that is needed is missing or wrong. Codes in the `5xx` range indicate that something is wrong with jobZology servers.\n\n\n## API endpoints\n\nBelow are listed all API endpoints currently implemented. It's possible to try them on using user you are currently logged in with." | |
}, | |
"openapi": "3.0.0", | |
"servers": [ | |
{ | |
"url": "{company-domain}.pathwayu.com", | |
"description": "API endpoint is dependant on the companyDomain and siteType" | |
} | |
], | |
"paths": { | |
"/api/administration/college-programs": { | |
"get": { | |
"summary": "administration/college-programs", | |
"description": "List College Programs\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "companyId", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "offset", | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "q", | |
"in": "query", | |
"description": "search programs using query", | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "programs list", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"programs": { | |
"type": "array", | |
"items": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
}, | |
"post": { | |
"summary": "administration/college-programs", | |
"description": "Create new program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK", | |
"cipCode", | |
"name" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"cipCode": { | |
"type": "string" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
}, | |
"link": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"program": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/college-programs/download": { | |
"get": { | |
"summary": "administration/college-programs/download", | |
"description": "Download College Programs related to copmany id\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "companyId", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "file blob", | |
"content": { | |
"application/octet-stream:": { | |
"schema": { | |
"type": "string", | |
"format": "(binary)" | |
} | |
} | |
} | |
}, | |
"500": { | |
"$ref": "#/components/responses/InternalServerError" | |
} | |
} | |
} | |
}, | |
"/api/administration/college-programs/bulk": { | |
"post": { | |
"summary": "administration/college-programs/delete-all", | |
"description": "Delete all programs for one domain\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"programs": { | |
"type": "array", | |
"items": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/college-programs/{program-id}": { | |
"put": { | |
"summary": "administration/college-programs/{program-id}", | |
"description": "Update existing program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "program-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK", | |
"cipCode", | |
"name" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"cipCode": { | |
"type": "string" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
}, | |
"link": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"program": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "administration/college-programs/{program-id}", | |
"description": "Delete Program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "program-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"get": { | |
"summary": "administration/college-programs/{program-id}", | |
"description": "Fetch Single program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "program-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "Program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"program": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/college-programs/companies": { | |
"get": { | |
"summary": "administration/college-programs/companies", | |
"description": "List Companies that have colleges\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "programs list", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companies": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"companyID_PK": { | |
"type": "number" | |
}, | |
"companyName": { | |
"type": "string" | |
}, | |
"companyDomain": { | |
"type": "string" | |
}, | |
"havePrograms": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/company-settings": { | |
"get": { | |
"summary": "administration/company-settings", | |
"description": "List all companies with settings\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list all companies successufuly", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySettings": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
}, | |
"post": { | |
"summary": "administration/company-settings", | |
"description": "Create new company\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "company-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"multipart/form-data": { | |
"schema": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CompanySettingInput" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"themeLogo": { | |
"type": "string", | |
"format": "binary" | |
} | |
} | |
} | |
] | |
} | |
}, | |
"application/json": { | |
"schema": { | |
"$ref": "#/components/schemas/CompanySettingInput" | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns created company", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySetting": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
}, | |
"put": { | |
"summary": "administration/company-settings", | |
"description": "update existing company\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "company-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"multipart/form-data": { | |
"schema": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CompanySettingInput" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"themeLogo": { | |
"type": "string", | |
"format": "binary" | |
} | |
} | |
} | |
] | |
} | |
}, | |
"application/json": { | |
"schema": { | |
"$ref": "#/components/schemas/CompanySettingInput" | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns updated company", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySetting": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/company-settings/{company-id}": { | |
"get": { | |
"summary": "administration/company-settings/{company-id}", | |
"description": "Get company info\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "company-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "fetch company", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySetting": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/company-search": { | |
"get": { | |
"summary": "administration/company-search", | |
"description": "Search on all companies with domain\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list all companies successufuly", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySettings": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/company-form": { | |
"post": { | |
"summary": "administration/company-form-client", | |
"description": "Create new company form\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK", | |
"code", | |
"discount" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"code": { | |
"type": "string" | |
}, | |
"discount": { | |
"type": "string" | |
}, | |
"expireAt": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns created company", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySetting": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/company-form-check/{token}": { | |
"get": { | |
"summary": "administration/company-form-check/{token}", | |
"description": "Create new company form\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK", | |
"code", | |
"discount" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"code": { | |
"type": "string" | |
}, | |
"discount": { | |
"type": "string" | |
}, | |
"expireAt": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns created company", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySetting": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/company-setting-add": { | |
"post": { | |
"summary": "administration/company-settings-add", | |
"description": "Create new company\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "company-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"multipart/form-data": { | |
"schema": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CompanySettingInput" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"themeLogo": { | |
"type": "string", | |
"format": "binary" | |
} | |
} | |
} | |
] | |
} | |
}, | |
"application/json": { | |
"schema": { | |
"$ref": "#/components/schemas/CompanySettingInput" | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns created company", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySetting": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/verify-domain": { | |
"post": { | |
"summary": "administration/verify-domain", | |
"description": "Create new company form\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"domain": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns created company", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySetting": { | |
"$ref": "#/components/schemas/CompanySettingWithPositions" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/coupons": { | |
"get": { | |
"summary": "administration/coupons", | |
"description": "List Coupons\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "companyId", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list all company coupons", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"coupons": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/Coupon" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
}, | |
"post": { | |
"summary": "administration/coupons", | |
"description": "Create new coupon\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK", | |
"code", | |
"discount" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"code": { | |
"type": "string" | |
}, | |
"discount": { | |
"type": "string" | |
}, | |
"expireAt": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"coupon": { | |
"$ref": "#/components/schemas/Coupon" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/coupons/{coupon-id}": { | |
"put": { | |
"summary": "administration/coupons/{coupon-id}", | |
"description": "Update existing coupon\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "coupon-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK", | |
"code", | |
"discount" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"code": { | |
"type": "string" | |
}, | |
"discount": { | |
"type": "string" | |
}, | |
"expireAt": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"coupon": { | |
"$ref": "#/components/schemas/Coupon" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "administration/coupons/{coupon-id}", | |
"description": "Delete Coupon\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "coupon-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"get": { | |
"summary": "administration/coupons/{coupon-id}", | |
"description": "Fetch Single Coupon\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "coupon-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "Coupon", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"program": { | |
"$ref": "#/components/schemas/Coupon" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/coupons/companies": { | |
"get": { | |
"summary": "administration/coupons/companies", | |
"description": "List Companies that have payments and support coupons\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "programs list", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companies": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"companyID_PK": { | |
"type": "number" | |
}, | |
"companyName": { | |
"type": "string" | |
}, | |
"companyDomain": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/school": { | |
"post": { | |
"summary": "administration/custom-programs/school", | |
"description": "Create new school\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK", | |
"code", | |
"discount" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"logo": { | |
"type": "string" | |
}, | |
"locations": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"schoolPrograms": { | |
"$ref": "#/components/schemas/SchoolPrograms" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/schools": { | |
"get": { | |
"summary": "administration/custom-programs/schools", | |
"description": "List College Programs\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "companyId", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "offset", | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "q", | |
"in": "query", | |
"description": "search schools using query", | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "schools list", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"programs": { | |
"type": "array", | |
"items": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/program": { | |
"post": { | |
"summary": "administration/custom-programs/program", | |
"description": "Create new program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"companyID_FK", | |
"code", | |
"discount" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"detail": { | |
"type": "string" | |
}, | |
"cipcode": { | |
"type": "string" | |
}, | |
"programFamily": { | |
"type": "string" | |
}, | |
"format": { | |
"type": "string" | |
}, | |
"degreeType": { | |
"type": "string" | |
}, | |
"schoolSize": { | |
"type": "string" | |
}, | |
"schoolType": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"customPrograms": { | |
"$ref": "#/components/schemas/CustomPrograms" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/bulk": { | |
"post": { | |
"summary": "administration/custom-programs/bulk", | |
"description": "Upload list of new programs\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"schoolID_FK", | |
"programs" | |
], | |
"properties": { | |
"programs": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"schoolProgramsID_FK": { | |
"type": "number" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"detail": { | |
"type": "string" | |
}, | |
"cipcode": { | |
"type": "string" | |
}, | |
"programFamily": { | |
"type": "number" | |
}, | |
"format": { | |
"type": "string" | |
}, | |
"degreeType": { | |
"type": "string" | |
}, | |
"schoolSize": { | |
"type": "string" | |
}, | |
"schoolType": { | |
"type": "string" | |
}, | |
"graduationRate": { | |
"type": "number" | |
}, | |
"tuitionCost": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"programs": { | |
"type": "array", | |
"items": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CustomPrograms" | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/schools-all": { | |
"get": { | |
"summary": "administration/custom-programs/schools", | |
"description": "List all companies with settings\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list all schools successufuly", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySettings": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/SchoolProgram" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/programs": { | |
"get": { | |
"summary": "administration/custom-programs/programs", | |
"description": "List Programs\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "companyId", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "offset", | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "q", | |
"in": "query", | |
"description": "search programs using query", | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "schools list", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"programs": { | |
"type": "array", | |
"items": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/programs-all": { | |
"get": { | |
"summary": "administration/custom-programs/programs-all", | |
"description": "List all companies with settings\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list all programs successufuly", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companySettings": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/SchoolProgram" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/programs/{program-id}": { | |
"get": { | |
"summary": "administration/college-programs/programs/{program-id}", | |
"description": "Fetch Single program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "program-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "Program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"program": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/school/{program-id}": { | |
"put": { | |
"summary": "administration/custom-programs/school/{program-id}", | |
"description": "Update existing program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "program-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"name", | |
"locations" | |
], | |
"properties": { | |
"name": { | |
"type": "string" | |
}, | |
"locations": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"program": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/SchoolPrograms" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/SchoolProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/program/{program-id}": { | |
"put": { | |
"summary": "administration/custom-programs/program/{program-id}", | |
"description": "Update existing program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "program-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"name" | |
], | |
"properties": { | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"detail": { | |
"type": "string" | |
}, | |
"cipcode": { | |
"type": "string" | |
}, | |
"programFamily": { | |
"type": "string" | |
}, | |
"format": { | |
"type": "string" | |
}, | |
"degreeType": { | |
"type": "string" | |
}, | |
"schoolSize": { | |
"type": "string" | |
}, | |
"schoolType": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "program", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"program": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/SchoolPrograms" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"generalProgram": { | |
"$ref": "#/components/schemas/SchoolProgram" | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "administration/custom-programs/program/{program-id}", | |
"description": "Delete Program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "program-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/custom-programs/school/{school-id}": { | |
"delete": { | |
"summary": "administration/custom-programs/school/{school-id}", | |
"description": "Delete Program\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "school-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/user/{user-id}": { | |
"get": { | |
"summary": "administration/user/{user-id}", | |
"description": "Fetch User Info\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "user-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "returns basic user info", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"userID_PK": { | |
"type": "string" | |
}, | |
"firstName": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"zip": { | |
"type": "string" | |
}, | |
"level": { | |
"type": "number", | |
"enum": [ | |
1, | |
2, | |
3, | |
4, | |
5 | |
] | |
}, | |
"emailAddress": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"put": { | |
"summary": "administration/user/{user-id}", | |
"description": "Update users\n * access level\n * firstName\n * lastName\n * emailAddress\n\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "user-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"firstName": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"emailAddress": { | |
"type": "string" | |
}, | |
"level": { | |
"type": "number", | |
"enum": [ | |
3, | |
4, | |
5 | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns user basic info", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "string" | |
}, | |
"firstName": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"level": { | |
"type": "number", | |
"enum": [ | |
1, | |
2, | |
3, | |
4, | |
5 | |
] | |
}, | |
"emailAddress": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "administration/user/{user-id}", | |
"description": "remove user from company\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "user-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/user/invite": { | |
"post": { | |
"summary": "administration/user/invite", | |
"description": "Send email to invite User to Company\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"emailAddress": { | |
"type": "string" | |
}, | |
"level": { | |
"type": "number", | |
"enum": [ | |
1, | |
2, | |
3, | |
4, | |
5 | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/user": { | |
"post": { | |
"summary": "administration/user", | |
"description": "create new user\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"firstName": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"emailAddress": { | |
"type": "string" | |
}, | |
"passHash": { | |
"type": "string", | |
"deprecated": true | |
}, | |
"salt": { | |
"type": "string", | |
"deprecated": true | |
}, | |
"password": { | |
"type": "string" | |
}, | |
"zip": { | |
"type": "string" | |
}, | |
"level": { | |
"type": "number", | |
"enum": [ | |
3, | |
4, | |
5 | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/administration/move-users": { | |
"put": { | |
"summary": "/administration/move-users", | |
"description": "Create access for users on other company", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"domainSelected": { | |
"type": "integer", | |
"description": "domain select to move" | |
}, | |
"usersSelected": { | |
"type": "array", | |
"description": "array of user to move" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/administration/validate-user": { | |
"put": { | |
"summary": "/administration/validate-user", | |
"description": "Update is valid input for user by email", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"domainSelected": { | |
"type": "integer", | |
"description": "domain select to move" | |
}, | |
"usersSelected": { | |
"type": "array", | |
"description": "array of user to move" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/questions/sections/{assessment-id}": { | |
"get": { | |
"summary": "questions/sections/{assessment-id}", | |
"description": "get assessment questions", | |
"tags": [ | |
"Assessments" | |
], | |
"parameters": [ | |
{ | |
"name": "assessment-id", | |
"in": "path", | |
"description": "Assessment ID\n* 33 - personality old\n* 39 - personality hexaco\n* 41 - personality\n* 32 - interests\n* 14 - workplace\n", | |
"required": true, | |
"schema": { | |
"type": "number", | |
"enum": [ | |
33, | |
39, | |
41, | |
32, | |
14 | |
] | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list of questions", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"questions": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"questionnumber": { | |
"type": "integer" | |
}, | |
"question": { | |
"type": "string" | |
}, | |
"isreversescored": { | |
"type": "boolean" | |
}, | |
"questionid": { | |
"type": "integer" | |
}, | |
"section": { | |
"type": "integer" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/questions/ranked/{assessment-id}": { | |
"get": { | |
"summary": "questions/ranked/{assessment-id}", | |
"description": "get ranked assessment questions", | |
"tags": [ | |
"Assessments" | |
], | |
"parameters": [ | |
{ | |
"name": "assessment-id", | |
"in": "path", | |
"description": "assessment id", | |
"required": true, | |
"schema": { | |
"type": "string", | |
"enum": [ | |
31 | |
] | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list of questions", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"questions": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"questionnumber": { | |
"type": "integer" | |
}, | |
"question": { | |
"type": "string" | |
}, | |
"isreversescored": { | |
"type": "boolean" | |
}, | |
"questionid": { | |
"type": "integer" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/assessments/responses/{response-type}/{assessment-id}": { | |
"post": { | |
"summary": "assessments/responses/{response-type}/{assessment-id}", | |
"description": "submit personality, interests and workplace assessmente", | |
"tags": [ | |
"Assessments" | |
], | |
"parameters": [ | |
{ | |
"name": "assessment-id", | |
"in": "path", | |
"description": "Assessment ID\n* 33 - personality old\n* 39 - personality hexaco\n* 41 - personality\n* 32 - interests\n* 14 - workplace\n* 42 - purpose\n", | |
"required": true, | |
"schema": { | |
"type": "number", | |
"enum": [ | |
33, | |
39, | |
41, | |
32, | |
14, | |
42 | |
] | |
} | |
}, | |
{ | |
"name": "response-type", | |
"in": "path", | |
"description": "way how scores are calculated", | |
"required": true, | |
"schema": { | |
"type": "string", | |
"enum": [ | |
"avg", | |
"sum" | |
] | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"questionid": { | |
"type": "number" | |
}, | |
"value": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/assessments/values": { | |
"post": { | |
"summary": "assessments/values", | |
"description": "submit values assessment", | |
"tags": [ | |
"Assessments" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"description": "{[questionId]: value}\n", | |
"properties": { | |
"1": { | |
"type": "number" | |
}, | |
"2": { | |
"type": "number" | |
}, | |
"3": { | |
"type": "number" | |
}, | |
"4": { | |
"type": "number" | |
}, | |
"5": { | |
"type": "number" | |
}, | |
"6": { | |
"type": "number" | |
}, | |
"7": { | |
"type": "number" | |
}, | |
"8": { | |
"type": "number" | |
}, | |
"9": { | |
"type": "number" | |
}, | |
"10": { | |
"type": "number" | |
}, | |
"11": { | |
"type": "number" | |
}, | |
"12": { | |
"type": "number" | |
}, | |
"13": { | |
"type": "number" | |
}, | |
"14": { | |
"type": "number" | |
}, | |
"15": { | |
"type": "number" | |
}, | |
"16": { | |
"type": "number" | |
}, | |
"18": { | |
"type": "number" | |
}, | |
"19": { | |
"type": "number" | |
}, | |
"20": { | |
"type": "number" | |
}, | |
"21": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/candidate/generate-pdf": { | |
"post": { | |
"summary": "candidate/generate-pdf", | |
"description": "Generate Candidate Score PDF document\n* Admin Access Required\n", | |
"tags": [ | |
"Candidate" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"userId": { | |
"type": "number" | |
}, | |
"positionId": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "return file name", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"file": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/candidate/get-pdf": { | |
"post": { | |
"summary": "candidate/get-pdf", | |
"description": "Download or open Candidate PDF document\n", | |
"tags": [ | |
"Candidate" | |
], | |
"parameters": [ | |
{ | |
"name": "file", | |
"description": "file name that is returned from generate-pdf", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "firstName", | |
"description": "Users First Name", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "lastName", | |
"description": "Users Last Name", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "file blob", | |
"content": { | |
"application/octet-stream:": { | |
"schema": { | |
"type": "string", | |
"format": "(binary)" | |
} | |
} | |
} | |
}, | |
"500": { | |
"$ref": "#/components/responses/InternalServerError" | |
} | |
} | |
} | |
}, | |
"/api/career/details": { | |
"get": { | |
"summary": "career/details", | |
"description": "Get Career Details\n", | |
"tags": [ | |
"Career" | |
], | |
"parameters": [ | |
{ | |
"name": "onetId", | |
"in": "query", | |
"description": "O*Net ID\n", | |
"required": true, | |
"example": "17-2031.00", | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "All Career Info", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"career": { | |
"$ref": "#/components/schemas/CareerDetailsGeneral" | |
}, | |
"tasks": { | |
"$ref": "#/components/schemas/CareerDetailsTasks" | |
}, | |
"knowledge": { | |
"$ref": "#/components/schemas/CareerDetailsKnowledge" | |
}, | |
"skills": { | |
"$ref": "#/components/schemas/CareerDetailsSkills" | |
}, | |
"abilities": { | |
"$ref": "#/components/schemas/CareerDetailsAbilities" | |
}, | |
"jobOutlook": { | |
"$ref": "#/components/schemas/CareerDetailsJobOutlook" | |
}, | |
"education": { | |
"$ref": "#/components/schemas/CareerDetailsEducation" | |
}, | |
"exploreMore": { | |
"$ref": "#/components/schemas/CareerDetailsExploreMore" | |
}, | |
"programs": { | |
"$ref": "#/components/schemas/OccupationPrograms" | |
}, | |
"videoCode": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/career/favorite": { | |
"post": { | |
"summary": "career/favorite", | |
"description": "Add career to favorite\n", | |
"tags": [ | |
"Career" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"occupationId": { | |
"type": "string" | |
}, | |
"userId": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "career/favorite", | |
"description": "Remove career from favorite\n", | |
"tags": [ | |
"Career" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"occupationId": { | |
"type": "string" | |
}, | |
"userId": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/career/match": { | |
"get": { | |
"summary": "career/match", | |
"description": "Get Career Match\n", | |
"parameters": [ | |
{ | |
"name": "userId", | |
"in": "query", | |
"description": "User ID\n", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "occupationId", | |
"in": "query", | |
"description": "Occupation ID\n", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"tags": [ | |
"Career" | |
], | |
"responses": { | |
"200": { | |
"description": "career match", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"match": { | |
"$ref": "#/components/schemas/CareerMatch" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/career/matches": { | |
"get": { | |
"summary": "career/matches", | |
"description": "Get Career Matches\n", | |
"parameters": [ | |
{ | |
"name": "userId", | |
"in": "query", | |
"description": "User ID\n", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"tags": [ | |
"Career" | |
], | |
"responses": { | |
"200": { | |
"description": "list career matches", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"matches": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/CareerMatch" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/career/military-crosswalk": { | |
"get": { | |
"summary": "career/details", | |
"description": "Get Career Details\n", | |
"tags": [ | |
"Career" | |
], | |
"parameters": [ | |
{ | |
"name": "onetId", | |
"in": "query", | |
"description": "O*Net ID\n", | |
"required": true, | |
"example": "17-2031.00", | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "All Career Info", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"results": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"title": { | |
"type": "string" | |
}, | |
"occupations": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
}, | |
"occupations": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"comboMatchQual": { | |
"type": "string", | |
"enum": [ | |
"Weak", | |
"Very Strong", | |
"Strong", | |
"Good", | |
"Fair" | |
] | |
}, | |
"comboMatchValue": { | |
"type": "number", | |
"format": "float" | |
}, | |
"description": { | |
"type": "string" | |
}, | |
"intMatchQual": { | |
"type": "string", | |
"enum": [ | |
"Weak", | |
"Very Strong", | |
"Strong", | |
"Good", | |
"Fair" | |
] | |
}, | |
"intMatchValue": { | |
"type": "number", | |
"format": "float" | |
}, | |
"jobFamilyID": { | |
"type": "number" | |
}, | |
"jobZoneID": { | |
"type": "number" | |
}, | |
"onetID": { | |
"type": "string" | |
}, | |
"occupationID": { | |
"type": "number" | |
}, | |
"occupationTitle": { | |
"type": "string" | |
}, | |
"valMatchQual": { | |
"type": "string", | |
"enum": [ | |
"Weak", | |
"Very Strong", | |
"Strong", | |
"Good", | |
"Fair" | |
] | |
}, | |
"valMatchValue": { | |
"type": "number", | |
"format": "float" | |
}, | |
"favorite": { | |
"type": "boolean" | |
}, | |
"generalPrograms": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/career/subtitles/:file": { | |
"get": { | |
"summary": "career/details", | |
"description": "Get Career Details\n", | |
"tags": [ | |
"Career" | |
], | |
"parameters": [ | |
{ | |
"name": "file", | |
"in": "path", | |
"description": "O*Net Carrer ID + format |\nor with Spanish subtitle O*NET Carrer ID + _es + format\n", | |
"required": true, | |
"example": "17-2031.00.vtt | 17-2031.00_es.vtt", | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "WEBVTT video subtitle", | |
"content": { | |
"text/html": { | |
"schema": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/colleges/connections": { | |
"post": { | |
"summary": "colleges/connections", | |
"description": "Get user college programs connnections\n", | |
"tags": [ | |
"Colleges" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "Collection of key/value pairs\nwhere key is the id of the college that user is connected to\nFor Example\n {\n 3: [22, 11],\n 5: [13, 18],\n 8: [22, 3],\n }\n", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/college/{college-id}/connections": { | |
"post": { | |
"summary": "college/{college-id}/connections", | |
"description": "update user college connections\n", | |
"tags": [ | |
"Colleges" | |
], | |
"parameters": [ | |
{ | |
"name": "college-id", | |
"in": "path", | |
"description": "College ID", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"connections": { | |
"type": "array", | |
"description": "list of college programs", | |
"example": [ | |
1, | |
2, | |
3 | |
], | |
"items": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "list of connections\n", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"connections": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
}, | |
"example": [ | |
1, | |
2, | |
3 | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/colleges": { | |
"get": { | |
"summary": "colleges", | |
"description": "List 10 colleges with programs, locations and images and connections\n", | |
"tags": [ | |
"Colleges" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "offset", | |
"in": "query", | |
"description": "O*Net ID\n", | |
"required": false, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "state", | |
"in": "query", | |
"description": "Filter results by state\n", | |
"required": false, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "zipCode", | |
"in": "query", | |
"description": "Filter results by zipCode\n", | |
"required": false, | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "All Career Info", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"colleges": { | |
"type": "array", | |
"items": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/College" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"programs": { | |
"$ref": "#/components/schemas/CollegeProgram" | |
}, | |
"locations": { | |
"$ref": "#/components/schemas/CollegeLocation" | |
}, | |
"images": { | |
"$ref": "#/components/schemas/CollegeImage" | |
} | |
} | |
} | |
] | |
} | |
}, | |
"connections": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
}, | |
"example": [ | |
1, | |
2, | |
3 | |
] | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/colleges/programs": { | |
"post": { | |
"summary": "colleges/programs", | |
"description": "fetch all company positions\n", | |
"tags": [ | |
"Colleges" | |
], | |
"responses": { | |
"200": { | |
"description": "college programs or program families", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"positions": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/CompanyPosition" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/demographic/questions": { | |
"get": { | |
"summary": "demographic/questions", | |
"description": "get demographic assessment questions", | |
"tags": [ | |
"Demographic" | |
], | |
"responses": { | |
"200": { | |
"description": "list of questions", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"questions": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"preAssessmentQuestionID_PK": { | |
"type": "integer" | |
}, | |
"order": { | |
"type": "integer" | |
}, | |
"question": { | |
"type": "string" | |
}, | |
"page": { | |
"type": "number" | |
}, | |
"group": { | |
"type": "string" | |
}, | |
"type": { | |
"type": "string" | |
}, | |
"required": { | |
"type": "boolean" | |
}, | |
"visible": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
} | |
}, | |
"demographicAssessmentID_FK": { | |
"type": "number" | |
}, | |
"createdAt": { | |
"type": "date" | |
}, | |
"updatedAt": { | |
"type": "date" | |
}, | |
"options": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"preAssessmentOptionID_PK": { | |
"type": "number" | |
}, | |
"order": { | |
"type": "number" | |
}, | |
"option": { | |
"type": "string" | |
}, | |
"custom": { | |
"type": "boolean" | |
}, | |
"preAssessmentQuestionID_FK": { | |
"type": "number" | |
}, | |
"createdAt": { | |
"type": "date" | |
}, | |
"updatedAt": { | |
"type": "date" | |
} | |
} | |
} | |
}, | |
"answers": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"demographicAnswerID_PK": { | |
"type": "number" | |
}, | |
"answer": { | |
"type": "string" | |
}, | |
"demographicQuestionID_FK": { | |
"type": "number" | |
}, | |
"demographicOptionID_FK": { | |
"type": "number" | |
}, | |
"userID_FK": { | |
"type": "number" | |
}, | |
"createdAt": { | |
"type": "date" | |
}, | |
"updatedAt": { | |
"type": "date" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/demographic/responses": { | |
"post": { | |
"summary": "demographic/responses", | |
"description": "post pre assessment answer response", | |
"tags": [ | |
"Demographic" | |
], | |
"responses": { | |
"200": { | |
"description": "list of questions", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"questions": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"preAssessmentQuestionID_PK": { | |
"type": "integer" | |
}, | |
"order": { | |
"type": "integer" | |
}, | |
"question": { | |
"type": "string" | |
}, | |
"page": { | |
"type": "number" | |
}, | |
"group": { | |
"type": "string" | |
}, | |
"type": { | |
"type": "string" | |
}, | |
"required": { | |
"type": "boolean" | |
}, | |
"visible": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
} | |
}, | |
"demographicAssessmentID_FK": { | |
"type": "number" | |
}, | |
"createdAt": { | |
"type": "date" | |
}, | |
"updatedAt": { | |
"type": "date" | |
}, | |
"options": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"preAssessmentOptionID_PK": { | |
"type": "number" | |
}, | |
"order": { | |
"type": "number" | |
}, | |
"option": { | |
"type": "string" | |
}, | |
"custom": { | |
"type": "boolean" | |
}, | |
"preAssessmentQuestionID_FK": { | |
"type": "number" | |
}, | |
"createdAt": { | |
"type": "date" | |
}, | |
"updatedAt": { | |
"type": "date" | |
} | |
} | |
} | |
}, | |
"answers": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"demographicAnswerID_PK": { | |
"type": "number" | |
}, | |
"answer": { | |
"type": "string" | |
}, | |
"demographicQuestionID_FK": { | |
"type": "number" | |
}, | |
"demographicOptionID_FK": { | |
"type": "number" | |
}, | |
"userID_FK": { | |
"type": "number" | |
}, | |
"createdAt": { | |
"type": "date" | |
}, | |
"updatedAt": { | |
"type": "date" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/employer-settings/{position-id}": { | |
"get": { | |
"summary": "employer-settings/{position-id}", | |
"description": "Get Position Settings\n* Superuser Access Required\n", | |
"parameters": [ | |
{ | |
"name": "position-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "position with settings", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"position": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CompanyPosition" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"psychValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/PsychValues" | |
} | |
}, | |
"assessmentValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/AssessmentValues" | |
} | |
}, | |
"fitWeights": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/FitWeight" | |
} | |
}, | |
"idealScores": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/IdealScore" | |
} | |
}, | |
"riskInteractionValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/RiskInteractionValues" | |
} | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "employer-settings/position/{position-id}", | |
"description": "delete existing position\n* Superuser Access Required\n", | |
"parameters": [ | |
{ | |
"name": "position-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/employer-settings/position/{company-id}": { | |
"post": { | |
"summary": "employer-settings/position/{company-id}", | |
"description": "Create new position\n* Superuser Access Required\n", | |
"parameters": [ | |
{ | |
"name": "company-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"position": { | |
"type": "object", | |
"properties": { | |
"title": { | |
"type": "string" | |
}, | |
"display": { | |
"type": "array", | |
"description": "Control position visibility", | |
"items": { | |
"type": "number", | |
"description": "* 1 - Employee\n* 2 - Candidate\n" | |
} | |
}, | |
"studyLevel": { | |
"$ref": "#/components/schemas/StudyLevel" | |
} | |
} | |
}, | |
"psychValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/PsychValuesPlain" | |
} | |
}, | |
"assessmentValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/AssessmentValuesPlain" | |
} | |
}, | |
"fitWeights": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/FitWeightPlain" | |
} | |
}, | |
"idealScores": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/IdealScorePlain" | |
} | |
}, | |
"riskInteractionValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/RiskInteractionValuesPlain" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "list all companies successufuly", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"position": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CompanyPosition" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"psychValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/PsychValues" | |
} | |
}, | |
"assessmentValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/AssessmentValues" | |
} | |
}, | |
"fitWeights": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/FitWeight" | |
} | |
}, | |
"idealScores": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/IdealScore" | |
} | |
}, | |
"riskInteractionValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/RiskInteractionValues" | |
} | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/employer-settings/{company-id}": { | |
"put": { | |
"summary": "employer-settings/position/{company-id}", | |
"description": "update existing position\n* Superuser Access Required\n", | |
"parameters": [ | |
{ | |
"name": "company-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"position": { | |
"$ref": "#/components/schemas/CompanyPosition" | |
}, | |
"psychValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/PsychValues" | |
} | |
}, | |
"assessmentValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/AssessmentValues" | |
} | |
}, | |
"fitWeights": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/FitWeight" | |
} | |
}, | |
"idealScores": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/IdealScore" | |
} | |
}, | |
"riskInteractionValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/RiskInteractionValues" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "list all companies successufuly", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"position": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CompanyPosition" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"psychValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/PsychValues" | |
} | |
}, | |
"assessmentValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/AssessmentValues" | |
} | |
}, | |
"fitWeights": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/FitWeight" | |
} | |
}, | |
"idealScores": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/IdealScore" | |
} | |
}, | |
"riskInteractionValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/RiskInteractionValues" | |
} | |
} | |
} | |
} | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/industries/occupations": { | |
"get": { | |
"summary": "/industries/occupations", | |
"description": "get occupations and industries", | |
"tags": [ | |
"Industries" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list of occupations with industries", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"industryID": { | |
"type": "number" | |
}, | |
"occupationID": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/industry": { | |
"get": { | |
"summary": "/industry", | |
"description": "list industries", | |
"tags": [ | |
"Industries" | |
], | |
"responses": { | |
"200": { | |
"description": "list of industries", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"industries": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"industryID_PK": { | |
"type": "number" | |
}, | |
"industryName": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/jobs/search": { | |
"get": { | |
"summary": "/jobs/search", | |
"description": "list industries", | |
"tags": [ | |
"Jobs" | |
], | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "Search Query", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "zip", | |
"description": "Zip Code", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "radius", | |
"description": "Radius", | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "userId", | |
"description": "User ID", | |
"required": true, | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "jobType", | |
"description": "Job Type", | |
"in": "query", | |
"schema": { | |
"type": "string", | |
"enum": [ | |
"Full-time", | |
"Part-time", | |
"Contract", | |
"Internship", | |
"Temporary" | |
] | |
} | |
}, | |
{ | |
"name": "offset", | |
"description": "Offset jobs, used for pagination", | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "strength", | |
"description": "Jobs Strength", | |
"in": "query", | |
"schema": { | |
"type": "array", | |
"items": { | |
"type": "string", | |
"enum": [ | |
"week", | |
"very-strong", | |
"strong", | |
"good", | |
"fair" | |
] | |
} | |
} | |
}, | |
{ | |
"name": "sort", | |
"description": "Sort Jobs", | |
"in": "query", | |
"schema": { | |
"type": "string", | |
"enum": [ | |
"relevance", | |
"date" | |
], | |
"default": "relevance" | |
} | |
}, | |
{ | |
"name": "source", | |
"description": "Jobs Source", | |
"in": "query", | |
"schema": { | |
"type": "string", | |
"enum": [ | |
"indeed", | |
"feed" | |
] | |
} | |
} | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list of industries", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"jobs": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "number" | |
}, | |
"title": { | |
"type": "string" | |
}, | |
"url": { | |
"type": "string" | |
}, | |
"company": { | |
"type": "string" | |
}, | |
"location": { | |
"type": "string" | |
}, | |
"date": { | |
"type": "string" | |
}, | |
"snippet": { | |
"type": "string" | |
}, | |
"score": { | |
"type": "number" | |
} | |
} | |
} | |
}, | |
"count": { | |
"type": "number", | |
"description": "total number of jobs without filtering returned by jobs api" | |
}, | |
"haveMore": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/cards": { | |
"get": { | |
"summary": "cards", | |
"description": "List cards\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "cards list", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/JourneyCard" | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/journey/cards": { | |
"post": { | |
"summary": "journey/cards", | |
"description": "Create new card\n* Counselor Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"$ref": null | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "carrd", | |
"content": { | |
"application/json": { | |
"schema": { | |
"$ref": null | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/journey/cards/reorder": { | |
"put": { | |
"summary": "journey/cards/reorder", | |
"description": "update existing card\n* Counselor Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "cards list", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/JourneyCard" | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/journey/card/{id}": { | |
"put": { | |
"summary": "journey/card/{id}", | |
"description": "update existing card\n* Counselor Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"$ref": null | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "carrd", | |
"content": { | |
"application/json": { | |
"schema": { | |
"$ref": null | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "journey/card/{id}", | |
"description": "Delete Journey Card\n* Superuser Access Required\n", | |
"tags": [ | |
"Administration" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/me": { | |
"get": { | |
"summary": "me", | |
"description": "Fetch\n", | |
"tags": [ | |
"Me" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/UserData" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
}, | |
"put": { | |
"summary": "/me", | |
"description": "Mark notification as seen", | |
"tags": [ | |
"Me" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"notification": { | |
"type": "string", | |
"enum": [ | |
"been_to_jobs", | |
"been_to_career_matches", | |
"new_personality", | |
"secondary-email", | |
"terms-and-conditions" | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"409": { | |
"$ref": "#/components/responses/ConflictError" | |
}, | |
"500": { | |
"$ref": "#/components/responses/InternalServerError" | |
} | |
} | |
} | |
}, | |
"/api/programs/favorite": { | |
"post": { | |
"summary": "programs/favorite", | |
"description": "Add program to favorite\n", | |
"tags": [ | |
"Porgrams" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"customProgramsID_PK": { | |
"type": "number" | |
}, | |
"userId": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "programs/favorite", | |
"description": "Remove programs from favorite\n", | |
"tags": [ | |
"Career" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"occupationId": { | |
"type": "string" | |
}, | |
"userId": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/spartan-velocify": { | |
"post": { | |
"summary": "/spartan-velocify", | |
"description": "Used to publish spartan user info to velocify", | |
"tags": [ | |
"SpartanVelocify" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"levelOfInterests": { | |
"type": "string", | |
"enum": [ | |
6931, | |
6930, | |
6929, | |
6984 | |
], | |
"description": "- 6931 No Thanks\n- 6930 Interested please keep in touch\n- 6929 I would like to be contacted by an advisor\n- 6984 Military\n" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/theme": { | |
"get": { | |
"summary": "/theme", | |
"description": "Site Settings and Theme", | |
"tags": [ | |
"Theme" | |
], | |
"responses": { | |
"200": { | |
"description": "theme and company settings", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"theme": { | |
"type": "object", | |
"properties": { | |
"primaryColor": { | |
"type": "string" | |
}, | |
"accentColor": { | |
"type": "string" | |
}, | |
"appointmentLink": { | |
"type": "string" | |
}, | |
"jobBoard": { | |
"type": "boolean" | |
}, | |
"logo": { | |
"type": "string" | |
}, | |
"terms": { | |
"type": "boolean" | |
}, | |
"showMyJourney": { | |
"type": "boolean" | |
}, | |
"siteMode": { | |
"type": "number", | |
"enum": [ | |
1, | |
2 | |
], | |
"description": "- 1 Education\n- 2 Employer\n" | |
}, | |
"applyToMultipleJobs": { | |
"type": "boolean" | |
}, | |
"requestSecondaryEmail": { | |
"type": "boolean" | |
}, | |
"enableAssessmentResults": { | |
"type": "boolean" | |
}, | |
"LTIURL": { | |
"type": "string" | |
}, | |
"collegeMultiApply": { | |
"type": "boolean" | |
}, | |
"showCareerPrograms": { | |
"type": "boolean" | |
}, | |
"crosswalk": { | |
"type": "string" | |
}, | |
"workbook": { | |
"type": "string" | |
}, | |
"jobsFeed": { | |
"type": "boolean" | |
}, | |
"jobsFeedLabel": { | |
"type": "boolean" | |
}, | |
"price": { | |
"type": "number", | |
"format": "float" | |
}, | |
"companyID_FK": { | |
"type": "number" | |
} | |
} | |
}, | |
"company": { | |
"type": "object", | |
"properties": { | |
"companyName": { | |
"type": "string" | |
}, | |
"companyDomain": { | |
"type": "string" | |
} | |
} | |
}, | |
"haveCoupons": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/users/candidate/{user-id}": { | |
"get": { | |
"summary": "/users/candidate/{user-id}", | |
"description": "Get Candidate Scores\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"parameters": [ | |
{ | |
"name": "user-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "User with positions and scores", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"user": { | |
"type": "object", | |
"properties": { | |
"userID_PK": { | |
"type": "number" | |
}, | |
"firstName": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"emailAddress": { | |
"type": "string" | |
} | |
} | |
}, | |
"scores": { | |
"$ref": "#/components/schemas/Scores" | |
}, | |
"positions": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"companyPositionID_PK": { | |
"type": "number" | |
}, | |
"cutoffPercentage": { | |
"type": "number" | |
}, | |
"title": { | |
"type": "string" | |
}, | |
"studyLevel": { | |
"$ref": "#/components/schemas/StudyLevel" | |
}, | |
"idealScores": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/IdealScore" | |
} | |
}, | |
"psychValues": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/PsychValues" | |
} | |
}, | |
"fit": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/users/college-opt-in-report": { | |
"post": { | |
"summary": "users/college-opt-in-report", | |
"description": "Generate College Opt-In report\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "returns file name", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"file": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/users/download-report": { | |
"post": { | |
"summary": "users/download-report", | |
"description": "Download College Opt-In or Users Reports\n", | |
"tags": [ | |
"Users" | |
], | |
"parameters": [ | |
{ | |
"name": "file", | |
"description": "file name that is returned from generate-pdf", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "file blob", | |
"content": { | |
"application/octet-stream:": { | |
"schema": { | |
"type": "string", | |
"format": "(binary)" | |
} | |
} | |
} | |
}, | |
"500": { | |
"$ref": "#/components/responses/InternalServerError" | |
} | |
} | |
} | |
}, | |
"/api/users/findByEmail/{email-address}": { | |
"post": { | |
"summary": "users/findByEmail/{email-address}", | |
"description": "Find user by Email Address\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"parameters": [ | |
{ | |
"name": "email-address", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "user info", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"userIDPK": { | |
"type": "number" | |
}, | |
"ageRange": { | |
"type": "number", | |
"deprecated": true | |
}, | |
"commitment": { | |
"type": "number", | |
"deprecated": true | |
}, | |
"dateCreated": { | |
"type": "string", | |
"format": "date" | |
}, | |
"educationLevel": { | |
"type": "number", | |
"deprecated": true | |
}, | |
"firstName": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"incomeLevel": { | |
"type": "integer", | |
"deprecated": true | |
}, | |
"isActiveJobSeeker": { | |
"type": "boolean", | |
"deprecated": true | |
}, | |
"isValidated": { | |
"type": "boolean" | |
}, | |
"loyalty": { | |
"type": "number", | |
"deprecated": true | |
}, | |
"paymentProfileExprDate": { | |
"type": "string", | |
"format": "date", | |
"deprecated": true | |
}, | |
"zip": { | |
"type": "string" | |
}, | |
"satisfaction": { | |
"type": "number", | |
"deprecated": true | |
}, | |
"searchRadiusIDFK": { | |
"type": "number", | |
"deprecated": true | |
}, | |
"status": { | |
"type": "number", | |
"deprecated": true | |
}, | |
"userName": { | |
"type": "string", | |
"format": "email" | |
}, | |
"genderIDFK": { | |
"type": "object", | |
"properties": { | |
"genderIDPK": { | |
"type": "number" | |
}, | |
"genderName": { | |
"type": "string" | |
} | |
}, | |
"deprecated": true | |
}, | |
"ethnicityIDFK": { | |
"type": "object", | |
"properties": { | |
"ethnicityIDPK": { | |
"type": "number" | |
}, | |
"ethnicityName": { | |
"type": "string" | |
} | |
}, | |
"deprecated": true | |
}, | |
"raceIDFK": { | |
"type": "object", | |
"properties": { | |
"raceIDPK": { | |
"type": "number" | |
}, | |
"raceName": { | |
"type": "string" | |
} | |
}, | |
"deprecated": true | |
}, | |
"maritalStatusIDFK": { | |
"type": "object", | |
"properties": { | |
"maritalStatusIDPK": { | |
"type": "number" | |
}, | |
"maritalStatusName": { | |
"type": "string" | |
} | |
}, | |
"deprecated": true | |
}, | |
"userTypeIDFK": { | |
"type": "object", | |
"properties": { | |
"userTypeIDPK": { | |
"type": "number" | |
}, | |
"userTypeName": { | |
"type": "string" | |
} | |
}, | |
"deprecated": true | |
}, | |
"useraddressinstancesCollection": { | |
"type": "array", | |
"deprecated": true, | |
"items": { | |
"type": "object", | |
"properties": { | |
"addressIDFK": { | |
"type": "number" | |
}, | |
"addressTypeIDFK": { | |
"type": "object", | |
"properties": { | |
"addressIDPK": { | |
"type": "number" | |
}, | |
"addressTypeIDFK": { | |
"type": "object", | |
"properties": { | |
"addressTypeIDPK": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
}, | |
"streetNumber": { | |
"type": "number", | |
"format": "float" | |
}, | |
"streetNumberSuffix": { | |
"type": "string" | |
}, | |
"streetName": { | |
"type": "string" | |
}, | |
"streetType": { | |
"type": "string" | |
}, | |
"streetDirection": { | |
"type": "string" | |
}, | |
"addressTypeIdentifier": { | |
"type": "string" | |
}, | |
"localMunicipality": { | |
"type": "string" | |
}, | |
"city": { | |
"type": "string" | |
}, | |
"governingDistrict": { | |
"type": "string" | |
}, | |
"postalCode": { | |
"type": "string" | |
}, | |
"country": { | |
"type": "string" | |
}, | |
"addressLine1": { | |
"type": "string" | |
}, | |
"addressLine2": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/users/generate-profile-pdf": { | |
"post": { | |
"summary": "users/generate-profile-pdf", | |
"description": "Generate Assessments Scores PDF document\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"userId" | |
], | |
"properties": { | |
"userId": { | |
"type": "number" | |
}, | |
"score": { | |
"description": "used to limit report to only one assessment", | |
"type": "string", | |
"enum": [ | |
"interests", | |
"values", | |
"personality", | |
"workplace", | |
"purpose" | |
] | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "return file name", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"file": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/users/generate-report": { | |
"post": { | |
"summary": "users/generate-report", | |
"description": "Generate College Opt-In report\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"requestBody": { | |
"description": "Filters what should be included in report", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"name": { | |
"type": "boolean" | |
}, | |
"email": { | |
"type": "boolean" | |
}, | |
"createdDate": { | |
"type": "boolean" | |
}, | |
"assessmentsComplete": { | |
"type": "boolean" | |
}, | |
"completionDates": { | |
"type": "boolean" | |
}, | |
"interestsScores": { | |
"type": "boolean" | |
}, | |
"personalityScores": { | |
"type": "boolean" | |
}, | |
"valuesScores": { | |
"type": "boolean" | |
}, | |
"workplacePrefScores": { | |
"type": "boolean" | |
}, | |
"studentId": { | |
"type": "boolean" | |
}, | |
"dateFrom": { | |
"type": "string", | |
"format": "date" | |
}, | |
"dateTo": { | |
"type": "string", | |
"format": "date" | |
}, | |
"dateFromApp": { | |
"type": "string", | |
"format": "date" | |
}, | |
"dateToApp": { | |
"type": "string", | |
"format": "date" | |
}, | |
"positionType": { | |
"type": "boolean" | |
}, | |
"positionId": { | |
"type": "number" | |
}, | |
"recommendation": { | |
"type": "boolean" | |
}, | |
"jobFit": { | |
"type": "boolean" | |
}, | |
"companyFit": { | |
"type": "boolean" | |
}, | |
"personalityFit": { | |
"type": "boolean" | |
}, | |
"overallFit": { | |
"type": "boolean" | |
}, | |
"riskScore": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns file name", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"file": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/users/get-profile-pdf": { | |
"post": { | |
"summary": "users/get-profile-pdf", | |
"description": "Download or open User Profile PDF\n", | |
"tags": [ | |
"Users" | |
], | |
"parameters": [ | |
{ | |
"name": "file", | |
"description": "file name that is returned from generate-pdf", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "userId", | |
"description": "User ID", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "firstName", | |
"description": "Users First Name", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "lastName", | |
"description": "Users Last Name", | |
"in": "query", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "file blob", | |
"content": { | |
"application/octet-stream:": { | |
"schema": { | |
"type": "string", | |
"format": "(binary)" | |
} | |
} | |
} | |
}, | |
"500": { | |
"$ref": "#/components/responses/InternalServerError" | |
} | |
} | |
} | |
}, | |
"/api/users/have-archived": { | |
"get": { | |
"summary": "users/have-archived", | |
"description": "Check if company have archived users\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"archived": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/users/position/{user-id}": { | |
"put": { | |
"summary": "users/position/{user-id}", | |
"description": "Update User positions\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "user-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companyPositions": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
} | |
}, | |
"positionType": { | |
"$ref": "#/components/schemas/PositionType" | |
}, | |
"archived": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "Company Positions and Position Types", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"companyPositions": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
} | |
}, | |
"positionType": { | |
"$ref": "#/components/schemas/PositionType" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"get": { | |
"summary": "users/position/{user-id}", | |
"description": "Get User positions\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "user-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "Company Positions and Position Types", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"user": { | |
"$ref": "#/components/schemas/User" | |
}, | |
"companyPositions": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
} | |
}, | |
"positionType": { | |
"$ref": "#/components/schemas/PositionType" | |
}, | |
"archived": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/users/score/{user-id}": { | |
"get": { | |
"summary": "users/score/{user-id}", | |
"description": "Get User Score\nif id param is provided that is treated as admin access\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "user-id", | |
"in": "path", | |
"required": true, | |
"schema": { | |
"type": "number" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "Company Positions and Position Types", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"user": { | |
"type": "object", | |
"properties": { | |
"userID_PK": { | |
"type": "number" | |
}, | |
"firstName": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"dateCreated": { | |
"type": "string", | |
"format": "date" | |
}, | |
"zip": { | |
"type": "string" | |
}, | |
"studentId": { | |
"type": "string" | |
}, | |
"emailAddress": { | |
"type": "string" | |
}, | |
"companyPositions": { | |
"type": "array", | |
"items": { | |
"type": "number" | |
} | |
}, | |
"positionType": { | |
"$ref": "#/components/schemas/PositionType" | |
} | |
} | |
}, | |
"scores": { | |
"$ref": "#/components/schemas/Scores" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/users/search": { | |
"get": { | |
"summary": "users/search", | |
"description": "Search Users\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"parameters": [ | |
{ | |
"name": "sortBy", | |
"in": "query", | |
"schema": { | |
"type": "string", | |
"enum": [ | |
"firstName", | |
"lastName", | |
"emailAddress", | |
"completedAt", | |
"positionScore", | |
"position", | |
"assessmentsCompleted" | |
] | |
} | |
}, | |
{ | |
"name": "order", | |
"in": "query", | |
"schema": { | |
"type": "string", | |
"enum": [ | |
"DESC", | |
"ASC" | |
] | |
} | |
}, | |
{ | |
"name": "query", | |
"in": "query", | |
"description": "Search Query", | |
"schema": { | |
"type": "string" | |
} | |
}, | |
{ | |
"name": "offset", | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "positionId", | |
"description": "filter by Position ID", | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "days", | |
"description": "Limit results by number of days", | |
"in": "query", | |
"schema": { | |
"type": "number" | |
} | |
}, | |
{ | |
"name": "positionType", | |
"description": "Filter by Candidate or Employee", | |
"in": "query", | |
"schema": { | |
"$ref": "#/components/schemas/PositionType" | |
} | |
}, | |
{ | |
"name": "userType", | |
"description": "Filter users by access role(admin or users)", | |
"in": "query", | |
"schema": { | |
"type": "string", | |
"enum": [ | |
"user", | |
"admin" | |
] | |
} | |
}, | |
{ | |
"name": "status", | |
"description": "Filter users by assessments status", | |
"in": "query", | |
"schema": { | |
"type": "string", | |
"enum": [ | |
"completed", | |
"in-progress" | |
] | |
} | |
}, | |
{ | |
"name": "archived", | |
"description": "Should include archived users", | |
"in": "query", | |
"schema": { | |
"type": "boolean" | |
} | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "Company Positions and Position Types", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"users": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"firstName": { | |
"type": "string" | |
}, | |
"emailAddress": { | |
"type": "string" | |
}, | |
"assessmentsCompleted": { | |
"type": "number" | |
}, | |
"assessmentsCompletedOld": { | |
"type": "number" | |
}, | |
"interests": { | |
"type": "string", | |
"format": "date" | |
}, | |
"interestsOld": { | |
"type": "string", | |
"format": "date" | |
}, | |
"values": { | |
"type": "string", | |
"format": "date" | |
}, | |
"valuesOld": { | |
"type": "string", | |
"format": "date" | |
}, | |
"workplace": { | |
"type": "string", | |
"format": "date" | |
}, | |
"workplaceOld": { | |
"type": "string", | |
"format": "date" | |
}, | |
"personality": { | |
"type": "string", | |
"format": "date" | |
}, | |
"personalityOld": { | |
"type": "string", | |
"format": "date" | |
}, | |
"level": { | |
"$ref": "#/components/schemas/Level" | |
}, | |
"isValidated": { | |
"type": "boolean" | |
}, | |
"position": { | |
"type": "string" | |
}, | |
"positionType": { | |
"$ref": "#/components/schemas/PositionType" | |
}, | |
"positions": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"positionId": { | |
"type": "number" | |
}, | |
"title": { | |
"type": "string" | |
} | |
} | |
} | |
}, | |
"studentId": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/users/statuses": { | |
"get": { | |
"summary": "users/statuses", | |
"description": "Get User Statuses\n* Admin Access Required\n", | |
"tags": [ | |
"Users" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "Company Positions and Position Types", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"username": { | |
"type": "string" | |
}, | |
"Values": { | |
"type": "boolean" | |
}, | |
"Interests": { | |
"type": "boolean" | |
}, | |
"Workplace": { | |
"type": "boolean" | |
}, | |
"Personality": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/assessments/completion-email": { | |
"post": { | |
"summary": "assessments/completion-email", | |
"description": "send completion email", | |
"tags": [ | |
"Assessments" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"email": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/activate-user": { | |
"post": { | |
"summary": "auth/activate-user", | |
"description": "Activate users acccount using validation token and add him in elasticsearch\n", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"token" | |
], | |
"properties": { | |
"token": { | |
"type": "string", | |
"description": "authentication token" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "Activation successful", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"success": { | |
"type": "boolean", | |
"default": true | |
} | |
} | |
} | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/adfs/login": { | |
"get": { | |
"summary": "auth/adfs/login", | |
"description": "ADFS SAML login middleware", | |
"tags": [ | |
"Authentication" | |
], | |
"responses": { | |
"301": { | |
"$ref": "#/components/responses/TempTagLoginRedirect" | |
} | |
} | |
}, | |
"post": { | |
"summary": "auth/adfs/login", | |
"description": "ADFS SAML post request middleware", | |
"tags": [ | |
"Authentication", | |
"Not Tested" | |
], | |
"responses": { | |
"301": { | |
"$ref": "#/components/responses/TempTagLoginRedirect" | |
} | |
} | |
} | |
}, | |
"/api/auth/adfs/metadata": { | |
"get": { | |
"summary": "auth/adfs/metadata", | |
"description": "ADFS SAML metadata", | |
"tags": [ | |
"Authentication" | |
], | |
"responses": { | |
"200": { | |
"description": "returns adfs metadata specification" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/auth/admin": { | |
"post": { | |
"summary": "auth/admin", | |
"description": "Give counselor access to user, used by mc3\n* Admin Access Required\n", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"userIDPK" | |
], | |
"properties": { | |
"userIDPK": { | |
"type": "number", | |
"description": "id of the user" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
}, | |
"delete": { | |
"summary": "auth/admin", | |
"description": "Remove counselor access from user, used by mc3\n* Admin Access Required\n", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"userIDPK" | |
], | |
"properties": { | |
"userIDPK": { | |
"type": "number", | |
"description": "id of the user" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
}, | |
"404": { | |
"$ref": "#/components/responses/NotFoundError" | |
} | |
} | |
} | |
}, | |
"/api/auth/change-password": { | |
"post": { | |
"summary": "auth/change-password", | |
"description": "Change user password", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"password" | |
], | |
"properties": { | |
"salt": { | |
"type": "string", | |
"description": "that is used to encrypt password", | |
"deprecated": true | |
}, | |
"passHash": { | |
"type": "string", | |
"description": "password + user salt converted in sha256", | |
"deprecated": true | |
}, | |
"newPassword": { | |
"type": "string", | |
"description": "new user password" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/auth/check-reset-password": { | |
"post": { | |
"summary": "auth/check-reset-password", | |
"description": "Check reset password token and validate user", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"token" | |
], | |
"properties": { | |
"token": { | |
"type": "string", | |
"description": "reset password token" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/connect-request": { | |
"post": { | |
"summary": "auth/connect-request", | |
"description": "Send connect request email, used to connect sso with existing user", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"connect" | |
], | |
"properties": { | |
"connect": { | |
"type": "string", | |
"description": "connect token" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"500": { | |
"$ref": "#/components/responses/InternalServerError" | |
} | |
} | |
} | |
}, | |
"/api/auth/verify-connect": { | |
"post": { | |
"summary": "auth/verify-connect", | |
"description": "connect sso with existing user using trusted connect token", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"connect" | |
], | |
"properties": { | |
"connect": { | |
"type": "string", | |
"description": "trusted connect token" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"500": { | |
"$ref": "#/components/responses/InternalServerError" | |
} | |
} | |
} | |
}, | |
"/api/auth/fetchsalts": { | |
"post": { | |
"summary": "auth/fetchsalts", | |
"description": "fetch and update user salt that is used to encrypt password", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"userName" | |
], | |
"properties": { | |
"userName": { | |
"type": "string", | |
"description": "email address" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "static salt + temp salt", | |
"content": { | |
"text/html": { | |
"schema": { | |
"type": "string", | |
"example": "staticSalt:tempSalt" | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"500": { | |
"$ref": "#/components/responses/InternalServerError" | |
} | |
} | |
} | |
}, | |
"/api/auth/forget-password": { | |
"post": { | |
"summary": "auth/forget-password", | |
"description": "send forget password email", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"email" | |
], | |
"properties": { | |
"email": { | |
"type": "string", | |
"description": "email address" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessResponse" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/auth/login": { | |
"post": { | |
"summary": "auth/login", | |
"description": "Login", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"userName", | |
"password" | |
], | |
"properties": { | |
"userName": { | |
"type": "string", | |
"description": "email address of a user" | |
}, | |
"sha256hash": { | |
"type": "string", | |
"description": "password + user salt converted in sha256", | |
"deprecated": true | |
}, | |
"password": { | |
"type": "string", | |
"description": "user password" | |
}, | |
"connect": { | |
"type": "string", | |
"description": "connect token used for the user invite" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/UserData" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/auth/lti/launch": { | |
"post": { | |
"summary": "auth/lti/launch", | |
"description": "LTI launch endpoint", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"lis_person_contact_email_primary", | |
"launch_presentation_return_url" | |
], | |
"properties": { | |
"lis_person_name_given": { | |
"type": "string", | |
"description": "first name" | |
}, | |
"lis_person_name_family": { | |
"type": "string", | |
"description": "last name" | |
}, | |
"lis_person_name_full": { | |
"type": "string", | |
"description": "full name" | |
}, | |
"roles": { | |
"description": "roles", | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
}, | |
"custom_zip": { | |
"description": "roles", | |
"type": "string" | |
}, | |
"launch_presentation_return_url": { | |
"type": "string", | |
"description": "return url" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"301": { | |
"$ref": "#/components/responses/TempTagLoginRedirect" | |
} | |
} | |
} | |
}, | |
"/api/auth/maxauthlevel": { | |
"post": { | |
"summary": "auth/maxauthlevel", | |
"description": "get user maxauthlevel", | |
"tags": [ | |
"Authentication" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "user level", | |
"content": { | |
"text/html": { | |
"schema": { | |
"type": "string", | |
"example": 5 | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/merge-accounts": { | |
"post": { | |
"summary": "auth/merge-accounts", | |
"description": "Merge Account", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"mergeToken": { | |
"type": "string", | |
"description": "token that is used to merge account" | |
}, | |
"sha256hash": { | |
"type": "string", | |
"description": "password + user salt converted in sha256", | |
"deprecated": true | |
}, | |
"password": { | |
"type": "string", | |
"description": "user password" | |
}, | |
"secondaryEmail": { | |
"type": "string", | |
"description": "secondary email address" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/UserData" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/send-merge-request": { | |
"post": { | |
"summary": "auth/send-merge-request", | |
"description": "Send Merge Account Request", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"secondaryEmail" | |
], | |
"properties": { | |
"secondaryEmail": { | |
"type": "string", | |
"description": "secondary email address" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/newsalt": { | |
"get": { | |
"summary": "auth/newsalt", | |
"description": "fetch random salt", | |
"tags": [ | |
"Authentication" | |
], | |
"responses": { | |
"200": { | |
"description": "random salt", | |
"content": { | |
"text/html": { | |
"schema": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"/api/auth/refresh": { | |
"post": { | |
"summary": "auth/refresh", | |
"description": "Refresh AuthToken", | |
"tags": [ | |
"Authentication" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "empty response with AuthTokenHeader", | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/signup": { | |
"post": { | |
"description": "Signup", | |
"summary": "auth/signup", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"password", | |
"firstName", | |
"lastName", | |
"userName" | |
], | |
"properties": { | |
"userName": { | |
"type": "string", | |
"description": "email address" | |
}, | |
"password": { | |
"type": "string" | |
}, | |
"zip": { | |
"type": "string" | |
}, | |
"inviteCode": { | |
"description": "used to set level of invited user", | |
"type": "string" | |
}, | |
"companyPositions": { | |
"description": "company position ids", | |
"type": "array", | |
"items": { | |
"type": "number" | |
} | |
}, | |
"positionType": { | |
"$ref": "#/components/schemas/PositionType" | |
}, | |
"leadiD": { | |
"description": "ubeu subodmain specific leadiD", | |
"type": "string" | |
}, | |
"passHash": { | |
"description": "password + user salt converted in sha256", | |
"type": "string", | |
"deprecated": true | |
}, | |
"salt": { | |
"description": "salt that is used to encrypt password", | |
"type": "string", | |
"deprecated": true | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "returns user data if there is no account validation", | |
"content": { | |
"application/json": { | |
"schema": { | |
"oneOf": [ | |
{ | |
"$ref": "#/components/schemas/UserDataSchema" | |
}, | |
{ | |
"$ref": "#/components/schemas/SuccessSchema" | |
} | |
] | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/auth/stripe-charge": { | |
"post": { | |
"summary": "auth/stripe-charge", | |
"description": "Make stripe charge", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"stripeToken" | |
], | |
"properties": { | |
"stripeToken": { | |
"type": "string", | |
"description": "stripe token" | |
}, | |
"couponCode": { | |
"type": "string", | |
"description": "coupon code" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessWithAuthToken" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/myTempTag": { | |
"get": { | |
"summary": "auth/myTempTag", | |
"description": "get current user temp tag", | |
"tags": [ | |
"Authentication" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "current logged in user temp tag", | |
"content": { | |
"text/html": { | |
"schema": { | |
"type": "string" | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/{user-id}/tempTag": { | |
"get": { | |
"summary": "auth/{user-id}/tempTag", | |
"description": "Get User temp tag\n* Admin Access Required\n", | |
"parameters": [ | |
{ | |
"name": "user-id", | |
"in": "path", | |
"description": "user id", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"tags": [ | |
"Authentication" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "returns specific user logn temp tag", | |
"content": { | |
"text/html": { | |
"schema": { | |
"type": "string" | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
}, | |
"403": { | |
"$ref": "#/components/responses/ForbiddenError" | |
} | |
} | |
} | |
}, | |
"/api/auth/universal-login/list": { | |
"get": { | |
"summary": "auth/universal-login/list", | |
"description": "Lists sites users belong to, only available on `login` subdomain\n", | |
"tags": [ | |
"Authentication" | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"200": { | |
"description": "list of companies/sites that user belongs to", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"access": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"companyDomain": { | |
"type": "string" | |
}, | |
"companyName": { | |
"type": "string" | |
}, | |
"logo": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"401": { | |
"$ref": "#/components/responses/UnauthorizedError" | |
} | |
} | |
} | |
}, | |
"/api/auth/universal-login/redirect": { | |
"get": { | |
"summary": "auth/universal-login/redirect", | |
"description": "redirect user to other subdomain and log him in\n", | |
"tags": [ | |
"Authentication" | |
], | |
"parameters": [ | |
{ | |
"name": "to", | |
"in": "query", | |
"description": "companyDomain", | |
"required": true, | |
"schema": { | |
"type": "string" | |
} | |
} | |
], | |
"security": [ | |
{ | |
"authToken": [] | |
} | |
], | |
"responses": { | |
"302": { | |
"description": "redirect users to other subdomain and log him in using temptag", | |
"headers": { | |
"Location": { | |
"schema": { | |
"type": "string", | |
"example": "https://youruniversity.jobzology.us/?temptag=pqwoei12093" | |
} | |
} | |
} | |
}, | |
"500": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/auth/validate-coupon": { | |
"post": { | |
"summary": "auth/validate-coupon", | |
"description": "validate coupon code before creating account", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"couponCode" | |
], | |
"properties": { | |
"couponCode": { | |
"type": "string", | |
"description": "coupon code" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"description": "Success with discount code", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"success": { | |
"type": "boolean", | |
"default": true | |
}, | |
"discount": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
}, | |
"/api/auth/validate-email": { | |
"post": { | |
"summary": "auth/validate-email", | |
"description": "validate email before creating account", | |
"tags": [ | |
"Authentication" | |
], | |
"requestBody": { | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"required": [ | |
"email" | |
], | |
"properties": { | |
"email": { | |
"type": "string", | |
"description": "email address" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"responses": { | |
"200": { | |
"$ref": "#/components/responses/SuccessResponse" | |
}, | |
"400": { | |
"$ref": "#/components/responses/BadRequestError" | |
} | |
} | |
} | |
} | |
}, | |
"components": { | |
"schemas": { | |
"User": { | |
"type": "object", | |
"properties": { | |
"userId": { | |
"type": "integer", | |
"format": "int64" | |
}, | |
"firstName": { | |
"type": "string" | |
}, | |
"lastName": { | |
"type": "string" | |
}, | |
"dateCreated": { | |
"type": "string", | |
"format": "date" | |
}, | |
"zip": { | |
"type": "string" | |
}, | |
"studentId": { | |
"type": "string" | |
}, | |
"mobilePhone": { | |
"type": "string" | |
}, | |
"graduationYear": { | |
"type": "string" | |
}, | |
"streetAddress": { | |
"type": "string" | |
}, | |
"unit": { | |
"type": "string" | |
}, | |
"city": { | |
"type": "string" | |
}, | |
"state": { | |
"type": "string" | |
}, | |
"leadiD": { | |
"type": "string" | |
}, | |
"advisorId": { | |
"type": "string" | |
}, | |
"highSchoolId": { | |
"type": "string" | |
}, | |
"spartanUserType": { | |
"type": "integer" | |
}, | |
"isPaying": { | |
"type": "boolean" | |
}, | |
"emailAddress": { | |
"type": "string" | |
}, | |
"secondaryEmail": { | |
"type": "string" | |
} | |
} | |
}, | |
"UserWithPositions": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/User" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"companyPositions": { | |
"type": "array", | |
"items": { | |
"type": "integer" | |
} | |
}, | |
"positionType": { | |
"$ref": "#/components/schemas/PositionType" | |
} | |
} | |
} | |
] | |
}, | |
"Notifications": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
}, | |
"Scores": { | |
"type": "object", | |
"properties": { | |
"Realistic": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Investigative": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Artistic": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Social": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Enterprising": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Conventional": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Extraversion": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Agreeableness": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Conscientiousness": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Emotional Stability": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Intellect / Imagination": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Honesty/Humility": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Achievement": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Working Conditions": { | |
"type": "number", | |
"format": "float" | |
}, | |
"RecognitionVal": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Relationships": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Support": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Independence": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Excellence": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Guiding Principles": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Collaboration": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Innovation": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Recognition": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Performance": { | |
"type": "number", | |
"format": "float" | |
}, | |
"Stability": { | |
"type": "number", | |
"format": "float" | |
} | |
} | |
}, | |
"Level": { | |
"type": "integer", | |
"enum": [ | |
1, | |
2, | |
3, | |
4, | |
5 | |
], | |
"default": 5, | |
"description": "* 1 - Super User\n* 2 - Consultant\n* 3 - Admin\n* 4 - Exces\n* 5 - User\n" | |
}, | |
"CompanyPosition": { | |
"type": "object", | |
"properties": { | |
"title": { | |
"type": "string" | |
}, | |
"occupationID_ONET": { | |
"type": "string" | |
}, | |
"cutoffPercentage": { | |
"type": "string" | |
}, | |
"display": { | |
"type": "array", | |
"default": [ | |
1, | |
2 | |
], | |
"description": "1 - employee\n2 - candidate\n", | |
"items": { | |
"type": "integer" | |
} | |
}, | |
"studyLevel": { | |
"$ref": "#/components/schemas/StudyLevel" | |
} | |
} | |
}, | |
"StudyLevel": { | |
"type": "number", | |
"enum": [ | |
0, | |
1, | |
2, | |
3 | |
], | |
"description": "* 0 - Get to know your candidate\n* 1 - Talent Analyitics fit\n* 2 - Talent Insights\n* 3 - Talent Analyitics risk\n" | |
}, | |
"PositionType": { | |
"type": "number", | |
"enum": [ | |
1, | |
2 | |
], | |
"description": "* 1 - Employee\n* 2 - Candidate\n* 2 - Talent Insights\n* 3 - Talent Analyitics risk\n" | |
}, | |
"IdealScorePlain": { | |
"type": "object", | |
"properties": { | |
"score": { | |
"type": "number" | |
}, | |
"primary": { | |
"type": "boolean" | |
}, | |
"psychCategoryID_FK": { | |
"type": "number" | |
} | |
} | |
}, | |
"IdealScore": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/IdealScorePlain" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"psychCategoryID_FK": { | |
"type": "number" | |
}, | |
"companyPositionID_FK": { | |
"type": "number" | |
}, | |
"companyID_FK": { | |
"type": "number" | |
} | |
} | |
} | |
] | |
}, | |
"PsychValuesPlain": { | |
"type": "object", | |
"properties": { | |
"mean": { | |
"type": "number" | |
}, | |
"std": { | |
"type": "number" | |
}, | |
"weight": { | |
"type": "number" | |
}, | |
"psychCategoryID_FK": { | |
"type": "number" | |
} | |
} | |
}, | |
"PsychValues": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/PsychValuesPlain" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"companyPsychValuesID_PK": { | |
"type": "number" | |
}, | |
"companyPositionID_FK": { | |
"type": "number" | |
}, | |
"companyID_FK": { | |
"type": "number" | |
} | |
} | |
} | |
] | |
}, | |
"AssessmentValuesPlain": { | |
"type": "object", | |
"properties": { | |
"min": { | |
"type": "number" | |
}, | |
"max": { | |
"type": "number" | |
}, | |
"assessmentID_FK": { | |
"type": "number" | |
} | |
} | |
}, | |
"AssessmentValues": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/AssessmentValuesPlain" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"companyAssessmentValuesID_PK": { | |
"type": "number" | |
}, | |
"companyPositionID_FK": { | |
"type": "number" | |
}, | |
"companyID_FK": { | |
"type": "number" | |
} | |
} | |
} | |
] | |
}, | |
"FitWeightPlain": { | |
"type": "object", | |
"properties": { | |
"fitWeight": { | |
"type": "number" | |
}, | |
"overallFitWeight": { | |
"type": "number" | |
}, | |
"assessmentID_FK": { | |
"type": "number" | |
} | |
} | |
}, | |
"FitWeight": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/FitWeightPlain" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"fitWeightID_PK": { | |
"type": "number" | |
}, | |
"companyPositionID_FK": { | |
"type": "number" | |
} | |
} | |
} | |
] | |
}, | |
"RiskInteractionValuesPlain": { | |
"type": "object", | |
"properties": { | |
"mean": { | |
"type": "number" | |
}, | |
"coefficient": { | |
"type": "number" | |
}, | |
"interactionId": { | |
"type": "number" | |
} | |
} | |
}, | |
"RiskInteractionValues": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/RiskInteractionValuesPlain" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"riskInteractionValuesID_PK": { | |
"type": "number" | |
}, | |
"companyPositionID_FK": { | |
"type": "number" | |
} | |
} | |
} | |
] | |
}, | |
"CompanySettingInput": { | |
"type": "object", | |
"properties": { | |
"companyName": { | |
"type": "string" | |
}, | |
"companyDomain": { | |
"type": "string" | |
}, | |
"companyIndustryId": { | |
"type": "number" | |
}, | |
"companyIndustryName": { | |
"type": "string" | |
}, | |
"companySizeRangeId": { | |
"type": "number" | |
}, | |
"companyActive": { | |
"type": "boolean" | |
}, | |
"themePrimaryColor": { | |
"type": "string" | |
}, | |
"themeSecondaryColor": { | |
"type": "string" | |
}, | |
"themeAppointmentLink": { | |
"type": "string" | |
}, | |
"themeJobBoard": { | |
"type": "boolean" | |
}, | |
"themeLogo": { | |
"type": "string" | |
}, | |
"themeTerms": { | |
"type": "string" | |
}, | |
"themeShowMyJourney": { | |
"type": "boolean", | |
"default": true | |
}, | |
"themeSiteMode": { | |
"type": "number", | |
"enum": [ | |
1, | |
2 | |
], | |
"description": "* 1 - education site\n* 2 - employer site\n" | |
}, | |
"themeApplyToMultipleJobs": { | |
"type": "boolean", | |
"default": true | |
}, | |
"themeEnableAssessmentResults": { | |
"type": "array", | |
"default": [ | |
1, | |
2 | |
], | |
"description": "* 1 - employee\n* 2 - candidate\n", | |
"items": { | |
"type": "integer" | |
} | |
}, | |
"themeShowCareerPrograms": { | |
"type": "boolean" | |
}, | |
"themeLTIURL": { | |
"type": "string" | |
}, | |
"themePrice": { | |
"type": "number", | |
"format": "float" | |
}, | |
"themeRequestSecondaryEmail": { | |
"type": "boolean" | |
}, | |
"themeCrosswalk": { | |
"type": "boolean" | |
}, | |
"themeWorkbook": { | |
"type": "boolean" | |
}, | |
"themeJobsFeed": { | |
"type": "string" | |
}, | |
"themeGA": { | |
"type": "string" | |
}, | |
"themePurposeSurvey": { | |
"type": "boolean" | |
}, | |
"themeCompletionEmail": { | |
"type": "boolean" | |
}, | |
"themeDemographicQuestions": { | |
"type": "boolean" | |
}, | |
"themeEmailVerification": { | |
"type": "boolean" | |
}, | |
"themeCustomProgramText": { | |
"type": "string" | |
}, | |
"themeCustomProgramUrl": { | |
"type": "string" | |
}, | |
"themeCustomProgramLinkText": { | |
"type": "string" | |
} | |
} | |
}, | |
"CompanySetting": { | |
"allOf": [ | |
{ | |
"type": "object", | |
"properties": { | |
"companyId": { | |
"type": "number" | |
} | |
} | |
}, | |
{ | |
"$ref": "#/components/schemas/CompanySettingInput" | |
} | |
] | |
}, | |
"CompanySettingWithPositions": { | |
"allOf": [ | |
{ | |
"$ref": "#/components/schemas/CompanySetting" | |
}, | |
{ | |
"type": "object", | |
"properties": { | |
"positions": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/CompanyPosition" | |
} | |
} | |
} | |
} | |
] | |
}, | |
"UserDataSchema": { | |
"type": "object", | |
"properties": { | |
"user": { | |
"$ref": "#/components/schemas/UserWithPositions" | |
}, | |
"scores": { | |
"$ref": "#/components/schemas/Scores" | |
}, | |
"notifications": { | |
"$ref": "#/components/schemas/Notifications" | |
}, | |
"level": { | |
"$ref": "#/components/schemas/Level" | |
} | |
} | |
}, | |
"OccupationProgram": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "number" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
}, | |
"link": { | |
"type": "string" | |
}, | |
"cip": { | |
"type": "string" | |
} | |
} | |
}, | |
"OccupationPrograms": { | |
"type": "object", | |
"properties": { | |
"list": { | |
"type": "array", | |
"items": { | |
"$ref": "#/components/schemas/OccupationProgram" | |
} | |
}, | |
"type": { | |
"type": "string", | |
"enum": [ | |
"direct", | |
"related", | |
"general" | |
] | |
}, | |
"programsType": { | |
"type": "string", | |
"enum": [ | |
"law", | |
"residency", | |
"healthcare", | |
"education" | |
] | |
}, | |
"customPrograms": { | |
"type": "boolean" | |
} | |
} | |
}, | |
"CareerDetailsAbilities": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"report": { | |
"type": "string" | |
}, | |
"display": { | |
"type": "string" | |
}, | |
"element": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "string" | |
}, | |
"related": { | |
"type": "string", | |
"format": "url" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"CareerDetailsGeneral": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"title": { | |
"type": "string" | |
}, | |
"tags": { | |
"type": "object", | |
"properties": { | |
"bright_outlook": { | |
"type": "boolean" | |
}, | |
"green": { | |
"type": "boolean" | |
}, | |
"apprenticeship": { | |
"type": "boolean" | |
} | |
} | |
}, | |
"also_called": { | |
"type": "object", | |
"properties": { | |
"title": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
} | |
} | |
}, | |
"what_they_do": { | |
"type": "string" | |
}, | |
"on_the_job": { | |
"type": "object", | |
"properties": { | |
"task": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
} | |
} | |
}, | |
"career_video": { | |
"type": "boolean" | |
}, | |
"resources": { | |
"type": "object", | |
"properties": { | |
"resource": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"href": { | |
"type": "string", | |
"format": "url" | |
}, | |
"title": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"CareerDetailsTasks": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"report": { | |
"type": "string" | |
}, | |
"display": { | |
"type": "string" | |
}, | |
"tasks": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "number" | |
}, | |
"green": { | |
"type": "boolean" | |
}, | |
"related": { | |
"type": "string", | |
"format": "url" | |
}, | |
"name": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"CareerDetailsKnowledge": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"report": { | |
"type": "string" | |
}, | |
"display": { | |
"type": "string" | |
}, | |
"element": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "number" | |
}, | |
"related": { | |
"type": "string", | |
"format": "url" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"CareerDetailsSkills": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"report": { | |
"type": "string" | |
}, | |
"display": { | |
"type": "string" | |
}, | |
"element": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "number" | |
}, | |
"related": { | |
"type": "string", | |
"format": "url" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"CareerDetailsJobOutlook": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"outlook": { | |
"type": "object", | |
"properties": { | |
"description": { | |
"type": "string" | |
}, | |
"category": { | |
"type": "string" | |
} | |
} | |
}, | |
"bright_outlook": { | |
"type": "object", | |
"properties": { | |
"description": { | |
"type": "string" | |
}, | |
"category": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
} | |
} | |
}, | |
"salary": { | |
"type": "object", | |
"properties": { | |
"soc_code": { | |
"type": "number" | |
}, | |
"annual_10th_percentile": { | |
"type": "number" | |
}, | |
"annual_median": { | |
"type": "number" | |
}, | |
"annual_90th_percentile": { | |
"type": "number" | |
}, | |
"hourly_10th_percentile": { | |
"type": "number" | |
}, | |
"hourly_median": { | |
"type": "number" | |
}, | |
"hourly_90th_percentile": { | |
"type": "number" | |
} | |
} | |
} | |
} | |
}, | |
"CareerDetailsEducation": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"job_zone": { | |
"type": "number" | |
}, | |
"education_usually_needed": { | |
"type": "object", | |
"properties": { | |
"category": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
} | |
} | |
}, | |
"apprenticeships": { | |
"type": "object", | |
"properties": { | |
"title": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"raipds": { | |
"type": "number" | |
}, | |
"name": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"CareerDetailsExploreMore": { | |
"type": "object", | |
"properties": { | |
"code": { | |
"type": "string" | |
}, | |
"careers": { | |
"type": "object", | |
"properties": { | |
"category": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"href": { | |
"type": "string", | |
"format": "url" | |
}, | |
"code": { | |
"type": "string" | |
}, | |
"title": { | |
"type": "string" | |
}, | |
"tags": { | |
"type": "object", | |
"properties": { | |
"bright_outlook": { | |
"type": "boolean" | |
}, | |
"green": { | |
"type": "boolean" | |
}, | |
"apprenticeship": { | |
"type": "boolean" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"industries": { | |
"type": "object", | |
"properties": { | |
"soc_code": { | |
"type": "string" | |
}, | |
"industry": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"href": { | |
"type": "string", | |
"format": "url" | |
}, | |
"percent_employed": { | |
"type": "number" | |
}, | |
"code": { | |
"type": "string" | |
}, | |
"title": { | |
"type": "string" | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"CareerMatch": { | |
"type": "object", | |
"properties": { | |
"comboMatchQual": { | |
"type": "string", | |
"enum": [ | |
"Weak", | |
"Very Strong", | |
"Strong", | |
"Good", | |
"Fair" | |
] | |
}, | |
"comboMatchValue": { | |
"type": "number", | |
"format": "float" | |
}, | |
"description": { | |
"type": "string" | |
}, | |
"intMatchQual": { | |
"type": "string", | |
"enum": [ | |
"Weak", | |
"Very Strong", | |
"Strong", | |
"Good", | |
"Fair" | |
] | |
}, | |
"intMatchValue": { | |
"type": "number", | |
"format": "float" | |
}, | |
"jobFamilyID": { | |
"type": "number" | |
}, | |
"jobZoneID": { | |
"type": "number" | |
}, | |
"onetID": { | |
"type": "string" | |
}, | |
"occupationID": { | |
"type": "number" | |
}, | |
"occupationAlternativeTitles": { | |
"type": "string" | |
}, | |
"occupationTitle": { | |
"type": "string" | |
}, | |
"valMatchQual": { | |
"type": "string", | |
"enum": [ | |
"Weak", | |
"Very Strong", | |
"Strong", | |
"Good", | |
"Fair" | |
] | |
}, | |
"valMatchValue": { | |
"type": "number", | |
"format": "float" | |
}, | |
"favorite": { | |
"type": "boolean" | |
}, | |
"generalPrograms": { | |
"type": "boolean" | |
} | |
} | |
}, | |
"College": { | |
"type": "object", | |
"properties": { | |
"collegeID_PK": { | |
"type": "number" | |
}, | |
"logo": { | |
"type": "string" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
}, | |
"facts": { | |
"type": "string" | |
}, | |
"featured": { | |
"type": "boolean" | |
}, | |
"sponsored": { | |
"type": "boolean" | |
}, | |
"hidden": { | |
"type": "boolean" | |
} | |
} | |
}, | |
"CollegeProgram": { | |
"type": "object", | |
"properties": { | |
"collegeProgramID_PK": { | |
"type": "number" | |
}, | |
"name": { | |
"type": "string" | |
}, | |
"cipCode": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
}, | |
"link": { | |
"type": "string" | |
}, | |
"collegeID_FK": { | |
"type": "number" | |
}, | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"collegeProgramID_FK": { | |
"type": "number" | |
} | |
} | |
}, | |
"Coupon": { | |
"type": "object", | |
"properties": { | |
"couponID_PK": { | |
"type": "number" | |
}, | |
"code": { | |
"type": "string" | |
}, | |
"discount": { | |
"type": "number" | |
}, | |
"expireAt": { | |
"type": "string", | |
"format": "date" | |
}, | |
"companyID_FK": { | |
"type": "number" | |
}, | |
"updatedAt": { | |
"type": "string", | |
"format": "date" | |
}, | |
"createdAt": { | |
"type": "string", | |
"format": "date" | |
} | |
} | |
}, | |
"CollegeLocation": { | |
"type": "object", | |
"properties": { | |
"collegeLocationID_PK": { | |
"type": "number" | |
}, | |
"name": { | |
"type": "string" | |
} | |
} | |
}, | |
"CollegeImage": { | |
"type": "object", | |
"properties": { | |
"collegeImageID_PK": { | |
"type": "number" | |
}, | |
"location": { | |
"type": "string", | |
"format": "url" | |
} | |
} | |
}, | |
"JourneyCard": { | |
"type": "object", | |
"properties": { | |
"journeyCardID_PK": { | |
"type": "number" | |
}, | |
"heading": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "text" | |
}, | |
"category": { | |
"type": "string" | |
}, | |
"color": { | |
"type": "string" | |
}, | |
"links": { | |
"type": "array", | |
"items": { | |
"type": "object", | |
"properties": { | |
"link": { | |
"type": "string" | |
}, | |
"label": { | |
"type": "string" | |
} | |
} | |
} | |
}, | |
"order": { | |
"type": "number" | |
} | |
} | |
}, | |
"SuccessSchema": { | |
"type": "object", | |
"properties": { | |
"success": { | |
"type": "boolean", | |
"default": true | |
} | |
} | |
} | |
}, | |
"responses": { | |
"UnauthorizedError": { | |
"description": "AuthToken missing, expired or invalid", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"error": { | |
"type": "string", | |
"default": "Unauthorized" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"ForbiddenError": { | |
"description": "User does not have access", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"error": { | |
"type": "string", | |
"default": "Forbidden" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"NotFoundError": { | |
"description": "Resource not found", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"error": { | |
"type": "string", | |
"default": "Not Found" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"BadRequestError": { | |
"description": "Bad Request", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"error": { | |
"type": "string", | |
"default": "Bad Request" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"InternalServerError": { | |
"description": "Internal Server Error", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"error": { | |
"type": "string", | |
"default": "Something went wrong" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"ConflictError": { | |
"description": "Conflict Error", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"error": { | |
"type": "string", | |
"default": "Duplicate Account" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"UserData": { | |
"description": "user, scores, notifications, level", | |
"content": { | |
"application/json": { | |
"schema": { | |
"$ref": "#/components/schemas/UserDataSchema" | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"SuccessWithAuthToken": { | |
"description": "Success with updated AuthTokenl", | |
"content": { | |
"application/json": { | |
"schema": { | |
"$ref": "#/components/schemas/SuccessSchema" | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"$ref": "#/components/headers/AuthToken" | |
} | |
} | |
}, | |
"SuccessResponse": { | |
"description": "Success", | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object", | |
"properties": { | |
"success": { | |
"type": "boolean", | |
"default": true | |
} | |
} | |
} | |
} | |
} | |
}, | |
"TempTagLoginRedirect": { | |
"description": "Temp tag Login", | |
"headers": { | |
"Location": { | |
"description": "redirect users to single page app using /?temptag", | |
"schema": { | |
"type": "string", | |
"example": "/?temptag=190238qoiwe19827398uqowe" | |
} | |
} | |
} | |
} | |
}, | |
"headers": { | |
"AuthToken": { | |
"description": "Updated authentication token", | |
"schema": { | |
"type": "string" | |
} | |
} | |
}, | |
"securitySchemes": { | |
"authToken": { | |
"type": "apiKey", | |
"in": "header", | |
"name": "AuthToken" | |
} | |
} | |
}, | |
"tags": [] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment