jobs-monorepo/services/api/pkg/swagger/swagger.yaml
Elshimy Ziad Magdy Taha 06f5f9cf02 add env
2025-11-01 17:52:12 +05:00

189 lines
4.4 KiB
YAML

basePath: /
definitions:
domain.JobAnalysisResult:
properties:
analysisResult:
type: string
analyzedAt:
type: string
id:
format: int64
type: integer
jobID:
format: int64
type: integer
keySkills:
items:
type: string
type: array
matchScore:
type: integer
missingSkills:
items:
type: string
type: array
recommendations:
type: string
type: object
domain.JobProvider:
enum:
- 0
- 1
- 2
- 3
- 4
- 5
type: integer
x-enum-varnames:
- LinkedIn
- Indeed
- Glassdoor
- Bayt
- TokyoDev
- JapanDev
ports.CreateJobCommand:
properties:
fwt:
type: string
keywords:
type: string
location:
type: string
numPages:
type: integer
provider:
$ref: '#/definitions/domain.JobProvider'
type: object
info:
contact: {}
description: API for managing job scraping operations
title: Jobs Scraper API
version: "1.0"
paths:
/jobs:
post:
consumes:
- application/json
description: Creates a new job with the provided specifications
parameters:
- description: Job creation data
in: body
name: job
required: true
schema:
$ref: '#/definitions/ports.CreateJobCommand'
produces:
- application/json
responses:
"201":
description: Successfully created job
schema:
additionalProperties:
type: string
type: object
"400":
description: Invalid request data
schema:
additionalProperties:
type: string
type: object
"500":
description: Internal server error
schema:
additionalProperties:
type: string
type: object
summary: Create a new job
tags:
- jobs
/jobs/{id}/analysis:
get:
description: Retrieves the analysis result for a specific job
parameters:
- description: Job ID
in: path
name: id
required: true
type: integer
produces:
- application/json
responses:
"200":
description: Job analysis result
schema:
$ref: '#/definitions/domain.JobAnalysisResult'
"400":
description: Invalid job ID
schema:
additionalProperties:
type: string
type: object
"404":
description: Analysis result not found
schema:
additionalProperties:
type: string
type: object
"500":
description: Internal server error
schema:
additionalProperties:
type: string
type: object
summary: Get job analysis result by job ID
tags:
- jobs
/jobs/analysis:
get:
description: Retrieves all job analysis results from the database
produces:
- application/json
responses:
"200":
description: List of job analysis results
schema:
items:
$ref: '#/definitions/domain.JobAnalysisResult'
type: array
"500":
description: Internal server error
schema:
additionalProperties:
type: string
type: object
summary: Get all job analysis results
tags:
- jobs
/jobs/analysis/top-matches:
get:
description: Retrieves jobs with high analysis match scores
parameters:
- description: 'Minimum match score (default: 70)'
in: query
name: min_score
type: integer
produces:
- application/json
responses:
"200":
description: List of top matching job analysis results
schema:
items:
$ref: '#/definitions/domain.JobAnalysisResult'
type: array
"400":
description: Invalid minimum score
schema:
additionalProperties:
type: string
type: object
"500":
description: Internal server error
schema:
additionalProperties:
type: string
type: object
summary: Get top matching jobs
tags:
- jobs
swagger: "2.0"