feat: add new endpoints: profiles matching, profile grading & jobs matchong (#3635)

This commit is contained in:
Abdellahi Mezid 2024-09-04 09:45:22 +02:00 коммит произвёл GitHub
Родитель be4aef698e
Коммит b051dd9e1b
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
2 изменённых файлов: 374 добавлений и 1 удалений

Просмотреть файл

@ -30,10 +30,13 @@ The connector supports the following operations:
- **Profile Parsing File**: Parse a Resume and create a Profile from it.
- **Profile Scoring**: Score Profiles indexed in Sources for a Job.
- **Profile Searching**: Score Profiles indexed in Sources for a Job.
- **Profiles Matching**: Match Profiles indexed in Sources to a Profile.
- **Profile Grading**: Grade a Profile indexed in a Source for a Job.
- **Job API**
- **Job Indexing**: Index a Job in a Board.
- **Jobs Scoring**: Score Jobs indexed in Boards for a Profile.
- **Jobs Searching**: Search Jobs indexed in Boards.
- **Jobs Matching**: Match Jobs indexed in Boards to a Job.
- **Text API**:
- **Text Embedding**: Vectorize a Text.
- **Text Geocoding**: Retrieve geojson data for any textual location input.
@ -46,4 +49,4 @@ The connector supports the following operations:
## Further Support
For further support, you can contact us at **support@riminder.net** or at our
[webpage](https://hrflow.ai/), and we'll be happy to help.
[webpage](https://hrflow.ai/), and we'll be happy to help.

Просмотреть файл

@ -1343,6 +1343,224 @@
]
}
},
"/v1/profile/asking": {
"get": {
"responses": {
"default": {
"description": "default",
"schema": {}
}
},
"summary": "Ask a question to a Profile indexed in a Source",
"description": "This endpoint allows asking a question based on a Profile object.",
"operationId": "ProfileAskingGet",
"x-ms-visibility": "important",
"produces": [
"application/json"
],
"tags": [
"PROFILE API"
],
"parameters": [
{
"$ref": "#/parameters/X-USER-EMAIL"
},
{
"$ref": "#/parameters/SourceKey"
},
{
"name": "key",
"type": "string",
"pattern": "^[a-f0-9]{40}$",
"required": false,
"x-ms-summary": "Profile Key",
"description": "The profile key",
"in": "query"
},
{
"name": "reference",
"type": "string",
"required": false,
"x-ms-summary": "Profile Reference",
"description": "The profile reference",
"in": "query"
},
{
"name": "questions[]",
"type": "array",
"items": {
"type": "string"
},
"required": true,
"x-ms-summary": "Questions",
"description": "Questions based on the queried profile.",
"in": "query"
}
]
}
},
"/v1/profiles/matching": {
"get": {
"responses": {
"default": {
"description": "default"
}
},
"summary": "Match Profiles indexed in Sources to a Profile",
"description": "Match Profiles indexed in Sources to a Profile.",
"operationId": "ProfilesMatchingGet",
"x-ms-visibility": "important",
"produces": [
"application/json"
],
"tags": [
"PROFILE API"
],
"parameters": [
{
"$ref": "#/parameters/X-USER-EMAIL"
},
{
"$ref": "#/parameters/ProfileKey"
},
{
"$ref": "#/parameters/ProfileReference"
},
{
"$ref": "#/parameters/SourceKey"
},
{
"$ref": "#/parameters/SourceKeys"
},
{
"$ref": "#/parameters/Page"
},
{
"$ref": "#/parameters/Limit"
},
{
"$ref": "#/parameters/OrderBy"
},
{
"$ref": "#/parameters/SortBy"
},
{
"$ref": "#/parameters/CreatedAtMin"
},
{
"$ref": "#/parameters/CreatedAtMax"
},
{
"$ref": "#/parameters/Name"
},
{
"$ref": "#/parameters/Email"
},
{
"$ref": "#/parameters/LocationGeopoint"
},
{
"$ref": "#/parameters/LocationDistance"
},
{
"$ref": "#/parameters/SummaryKeywords"
},
{
"$ref": "#/parameters/TextKeywords"
},
{
"$ref": "#/parameters/ExperienceKeywords"
},
{
"$ref": "#/parameters/ExperienceLocationGeopoint"
},
{
"$ref": "#/parameters/ExperienceLocationDistance"
},
{
"$ref": "#/parameters/ExperienceDurationMin"
},
{
"$ref": "#/parameters/ExperienceDurationMax"
},
{
"$ref": "#/parameters/EducationKeywords"
},
{
"$ref": "#/parameters/EducationLocationGeopoint"
},
{
"$ref": "#/parameters/EducationLocationDistance"
},
{
"$ref": "#/parameters/EducationDurationMin"
},
{
"$ref": "#/parameters/EducationDurationMax"
},
{
"$ref": "#/parameters/Skills"
},
{
"$ref": "#/parameters/Languages"
},
{
"$ref": "#/parameters/Interests"
},
{
"$ref": "#/parameters/TagsIncluded"
},
{
"$ref": "#/parameters/TagsExcluded"
}
]
}
},
"/v1/profile/grading": {
"get": {
"responses": {
"default": {
"description": "default"
}
},
"summary": "Grade a Profile indexed in a Source for a Job",
"description": "This endpoint allows grading a Profile for a Job.",
"operationId": "ProfileGradingGet",
"x-ms-visibility": "important",
"produces": [
"application/json"
],
"tags": [
"PROFILE API"
],
"parameters": [
{
"$ref": "#/parameters/X-USER-EMAIL"
},
{
"$ref": "#/parameters/GradingAlgorithm"
},
{
"$ref": "#/parameters/SourceKey"
},
{
"$ref": "#/parameters/ProfileKey"
},
{
"$ref": "#/parameters/ProfileReference"
},
{
"$ref": "#/parameters/BoardKey"
},
{
"$ref": "#/parameters/JobKey"
},
{
"$ref": "#/parameters/JobReference"
}
]
}
},
"/v1/job/indexing": {
"post": {
"responses": {
@ -1576,6 +1794,146 @@
}
]
}
},
"/v1/job/asking": {
"get": {
"responses": {
"default": {
"description": "default",
"schema": {}
}
},
"summary": "Ask questions to a Job indexed in a Board",
"description": "This endpoint allows asking questions based on a Job object.",
"operationId": "JobAskingGet",
"x-ms-visibility": "important",
"produces": [
"application/json"
],
"tags": [
"JOB API"
],
"parameters": [
{
"$ref": "#/parameters/X-USER-EMAIL"
},
{
"$ref": "#/parameters/BoardKey"
},
{
"name": "key",
"type": "string",
"pattern": "^[a-f0-9]{40}$",
"required": false,
"x-ms-summary": "Job Key",
"description": "The job key",
"in": "query"
},
{
"name": "reference",
"type": "string",
"required": false,
"x-ms-summary": "Job Reference",
"description": "The job reference",
"in": "query"
},
{
"name": "questions[]",
"type": "array",
"items": {
"type": "string"
},
"required": true,
"x-ms-summary": "Questions",
"description": "Questions based on the queried job",
"in": "query"
}
]
}
},
"/v1/jobs/matching": {
"get": {
"responses": {
"default": {
"description": "default"
}
},
"summary": "Match Jobs indexed in Boards to a Job",
"description": "This endpoint allows you to find Jobs similar to a target Job.",
"operationId": "JobsMatchingGet",
"x-ms-visibility": "important",
"produces": [
"application/json"
],
"tags": [
"JOB API"
],
"parameters": [
{
"$ref": "#/parameters/X-USER-EMAIL"
},
{
"$ref": "#/parameters/JobKey"
},
{
"$ref": "#/parameters/JobReference"
},
{
"$ref": "#/parameters/BoardKey"
},
{
"$ref": "#/parameters/BoardKeys"
},
{
"$ref": "#/parameters/Page"
},
{
"$ref": "#/parameters/Limit"
},
{
"$ref": "#/parameters/OrderBy"
},
{
"$ref": "#/parameters/SortBy"
},
{
"$ref": "#/parameters/CreatedAtMin"
},
{
"$ref": "#/parameters/CreatedAtMax"
},
{
"$ref": "#/parameters/Names"
},
{
"$ref": "#/parameters/LocationGeopoint"
},
{
"$ref": "#/parameters/SummaryKeywords"
},
{
"$ref": "#/parameters/TextKeywords"
},
{
"$ref": "#/parameters/Skills"
},
{
"$ref": "#/parameters/Languages"
},
{
"$ref": "#/parameters/RangesFloat"
},
{
"$ref": "#/parameters/RangesDate"
},
{
"$ref": "#/parameters/TagsIncluded"
},
{
"$ref": "#/parameters/TagsExcluded"
}
]
}
}
},
"definitions": {
@ -3595,6 +3953,18 @@
0,
1
]
},
"GradingAlgorithm": {
"name": "algorithm_key",
"type": "string",
"x-ms-visibility": "advanced",
"x-ms-summary": "Algorithm Key",
"description": "The key of the Grading Algorithm.",
"in": "query",
"enum": [
"1d07451c0f33091869bd3c6d336dfa4e5c63af74",
"daaa0f61b72a68b985f31d123ad45b361adc91e4"
]
}
},
"responses": {},