Job Offers Copilot
Job Offers Copilot · GPT アクション
JobOffersCopilot
POST /letter/candidateSaves candidate information.POST /letter/job-offerSaves job offer informationPOST /letter/companySaves company information.GET /letter/get-logo-upload-linkGenerates a unique link that users use to upload their logoGET /letter/save-logoYou must call with endpoint when the user provides logo: either its url or tells that he's uploaded it.'
元の API スキーマ
{
"openapi": "3.0.1",
"info": {
"title": "JobOffersCopilot",
"version": "v1"
},
"servers": [
{
"url": "https://api.copilot.us/run/654d23dc80b7a5ccae50e700/65786cb0956caf0360799198"
}
],
"paths": {
"/letter/candidate": {
"post": {
"operationId": "SaveCandidateInfo",
"summary": "Saves candidate information.",
"requestBody": {
"description": "Body containing candidate details.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CandidateInfo"
}
}
}
},
"responses": {
"200": {
"description": "Information about the success of the operation.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SuccessfulResponse"
}
}
}
},
"400": {
"description": "Occurs when there's an error in the request or processing.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FailedResponse"
}
}
}
}
}
}
},
"/letter/job-offer": {
"post": {
"operationId": "SaveJobOfferInfo",
"summary": "Saves job offer information",
"requestBody": {
"description": "Body containing job offer details.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/JobOfferInfo"
}
}
}
},
"responses": {
"200": {
"description": "Information about the success of the operation.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SuccessfulResponse"
}
}
}
}
}
}
},
"/letter/company": {
"post": {
"operationId": "SaveCompanyInfo",
"summary": "Saves company information.",
"requestBody": {
"description": "Body containing company details.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CompanyInfo"
}
}
}
},
"responses": {
"200": {
"description": "Confirmation of the invoice saving operation.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SuccessfulResponse"
}
}
}
}
}
}
},
"/letter/get-logo-upload-link": {
"get": {
"operationId": "GetLinkForLogoUpload",
"summary": "Generates a unique link that users use to upload their logo",
"responses": {
"200": {
"description": "The logo upload link.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/logoUploadResponse"
}
}
}
}
}
}
},
"/letter/save-logo": {
"get": {
"operationId": "SaveLogo",
"summary": "You must call with endpoint when the user provides logo: either its url or tells that he's uploaded it.'",
"parameters": [
{
"name": "logoUrl",
"in": "query",
"description": "URL of the logo to be saved. Populate this field only if the user has provided it. Otherwise, leave it empty.",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Confirmation of the logo saving operation.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SuccessfulResponse"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"CandidateInfo": {
"type": "object",
"properties": {
"firstName": {
"type": "string",
"description": "First name of the candidate."
},
"lastName": {
"type": "string",
"description": "Last name of the candidate."
},
"candidateAddress": {
"type": "string",
"description": "Address of the candidate."
},
"city": {
"type": "string",
"description": "City of the candidate."
},
"state": {
"type": "string",
"description": "State of the candidate."
},
"zip": {
"type": "string",
"description": "Zip of the candidate."
}
}
},
"JobOfferInfo": {
"type": "object",
"properties": {
"jobTitle": {
"type": "string",
"description": "Job title of the job offer."
},
"jobType": {
"type": "string",
"description": "Job type of the job offer."
},
"responsibilitiesAndExpectations": {
"type": "string",
"description": "Responsibilities and expectations of the job offer."
},
"payAmount": {
"type": "int",
"description": "Pay amount of the job offer."
},
"currencyType": {
"type": "string",
"description": "Currency type."
},
"paymentFrequency": {
"type": "string",
"description": "Payment frequency of the job offer."
},
"benefits": {
"type": "string",
"description": "Benefits of the job offer."
},
"startDate": {
"type": "string",
"description": "Start date of the job offer."
}
}
},
"CompanyInfo": {
"type": "object",
"properties": {
"companyName": {
"type": "string",
"description": "Name of the company."
},
"managerOrSupervisorName": {
"type": "string",
"nullable": true,
"description": "Manager or supervisor name of the company."
},
"managerOrSupervisorTitle": {
"type": "string",
"nullable": true,
"description": "Manager or supervisor title of the company."
},
"managerOrSupervisorContactInformation": {
"type": "string",
"nullable": true,
"description": "Manager or supervisor contact information of the company."
},
"workplaceLocation": {
"type": "string",
"description": "Workplace location of the company."
},
"yourPrintedName": {
"type": "string",
"description": "User's printed name."
},
"yourJobTitle": {
"type": "string",
"description": "Job title of the job offer"
}
}
},
"logoUploadResponse": {
"type": "object",
"properties": {
"responseInstructions": {
"type": "string",
"description": "Encourage the user to use this link to upload company logo. Ask user to let you know when it's done and resume is uplaoded.'"
},
"logoUploadLink": {
"type": "string",
"description": "The company logo upload link"
}
}
},
"SuccessfulResponse": {
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Indicates if the operation was successful."
},
"responseInstructions": {
"type": "string",
"description": "Instructions or feedback."
}
}
}
}
}
}