swe / softgarden-api
An API to the job portal SoftGarden
v1.2.8
2024-10-02 08:18 UTC
Requires
- php: ^7.4 || ^8.0
- ext-curl: *
- ext-json: *
- guzzlehttp/guzzle: ^6 || ^7
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
This is an API to simplify your connection to SoftGarden. The class \SWE\SoftGardenApi\Api\SoftGarden contains some
methods to get and post some specific data.
Methods
/** * @throws GuzzleException */ public function getCatalogByType(string $type, string $typeId): string; /** * @throws GuzzleException */ public function getCatalogue(string $type): array; /** * @throws GuzzleException */ public function getChannels(): ChannelCollection; /** * @throws GuzzleException */ public function getJob(string $channelId, int $jobId): Job; /** * @throws GuzzleException */ public function getJobBasket(string $channelId): JobSearchResult; /** * @throws GuzzleException */ public function getJobQuestions(int $jobId): JobQuestionCollection; /** * @throws GuzzleException */ public function getJobs(string $channelId): JobCollection; /** * @return bool */ public function isUseAutomaticCatalogueCompletion(): bool; /** * @param bool $useAutomaticCatalogueCompletion */ public function setUseAutomaticCatalogueCompletion(bool $useAutomaticCatalogueCompletion): void; /** * @throws GuzzleException */ public function searchForJob(string $channelId, string $search = '', string $geoLocation = ''): JobSearchResult; /** * @throws GuzzleException */ public function createApplicant(array $data): ApplicantData; /** * @throws GuzzleException */ public function applicantExists(array $data): bool; /** * @throws GuzzleException */ public function getUserAccessToken(ApplicantData $applicant): string; /** * @throws GuzzleException */ public function hasApplied(string $jobId, string $uat): bool; /** * @throws GuzzleException */ public function getAllApplications(string $uat, array $queryParameters = []): ApplicationDataCollection; /** * @throws GuzzleException */ public function getApplication(string $applicationId, string $uat): ApplicationData; /** * @throws GuzzleException */ public function startApplication(string $jobId, string $uat): string; /** * @throws GuzzleException */ public function sendApplicationInformation(string $applicationId, string $uat, array $applicationData): void; /** * @throws GuzzleException */ public function finalizeApplication(string $applicationId, string $uat, array $applicationData = []): void; /** * @throws GuzzleException */ public function deleteApplication(string $applicationId, string $uat): void; /** * @throws GuzzleException */ public function withdrawApplication(string $applicationId, string $uat): void;
Return values
ApplicantData
| Variable | Type | Default |
|---|---|---|
| id | string | '' |
| salutation | string | '' |
| firstname | string | '' |
| lastname | string | '' |
| string | '' | |
| workEmail | string | '' |
| username | string | '' |
| password | string | '' |
| locale | string | 'de' |
| internal | boolean | true |
| dataPrivacyAccepted | boolean | true |
ApplicationData
| Variable | Type | Default |
|---|---|---|
| applicationId | string | '' |
| status | string | '' |
| applicationEditable | boolean | false |
| createdOn | string | '' |
| lastChangedOn | string | '' |
| submittedOn | string | '' |
| withdrawnOn | string | '' |
| jobId | string | '' |
| jobName | string | '' |
| firstname | string | '' |
| lastname | string | '' |
| sex | string | '' |
| academictitle | string | '' |
| string | '' | |
| externalProfileUrl | string | '' |
| locale | string | 'de' |
| street | string | '' |
| zip | string | '' |
| city | string | '' |
| country | string | '' |
| nationality | string | '' |
| phone | string | '' |
| mobilePhone | string | '' |
| dateofbirth | string | '' |
| coverLetterText | string | '' |
| region | string | '' |
| imported | string | '' |
| applicationFeedbackConsent | boolean | false |
Channel
| Variable | Type | Default |
|---|---|---|
| id | string | '' |
| name | string | '' |
| accessible | boolean | false |
Collection
| Variable | Type | Default |
|---|---|---|
| items | array | [] |
Job
| Variable | Type | Default |
|---|---|---|
| jobDbId | integer | 0 |
| externalPostingName | string | '' |
| internalPostingName | string | '' |
| applyOnlineLink | string | '' |
| jobCategories | array | [] |
| audiences | array | [] |
| employmentTypes | array | [] |
| workTimes | array | [] |
| industries | array | [] |
| workExperiences | array | [] |
| geoLat | string | '' |
| geoLong | string | '' |
| geoName | string | '' |
| geoCountry | string | '' |
| geoState | string | '' |
| geoCity | string | '' |
| geoZip | string | '' |
| geoStreet | string | '' |
| jobAdText | string | '' |
| jobStartDate | integer | 0 |
| postingLastUpdatedDate | integer | 0 |
| jobOwnerSalutation | string | '' |
| jobOwnerTitle | string | '' |
| jobOwnerFirstname | string | '' |
| jobOwnerLastname | string | '' |
| jobOwnerStreet | string | '' |
| jobOwnerCity | string | '' |
| jobOwnerZip | string | '' |
| jobOwnerPhone | string | '' |
| jobOwnerEmail | string | '' |
| jobOwnerAvatarurl | string | '' |
| jobOwnerFunction | string | '' |
| jobAdUrl | string | '' |
| companyName | string | '' |
| companyId | string | '' |
| projectNumber | string | '' |
| internalReferenceId | string | '' |
| locale | string | '' |
| keywords | string | '' |
JobQuestion
| Variable | Type | Default |
|---|---|---|
| id | integer | 0 |
| question | string | '' |
| type | string | '' |
| answerCatalog | array/null | null |
JobSearchResult
| Variable | Type | Default |
|---|---|---|
| itemsPerPage | integer | 0 |
| numPages | integer | 0 |
| offset | integer | 0 |
| actualPage | integer | 0 |
| firstPostingOnPage | integer | 0 |
| lastPostingOnPage | integer | 0 |
| totalNumberOfJobs | integer | 0 |
| result | SearchResultCollection | 0 |
SearchResult
| Variable | Type | Default |
|---|---|---|
| jobPostingId | integer | 0 |
| postingVersionId | integer | 0 |
| title | string | '' |
| applyOnlineLink | string | '' |
| config | SearchResultConfig | null |
| jobStartDate | integer | 0 |
| postingVersionStartDate | integer | 0 |
| postingVersionEndDate | integer | 0 |
SearchResultConfig
| Variable | Type | Default |
|---|---|---|
| projectLocation | array | [] |
| projectNumber | array | [] |
| audience | array | [] |
| projectLocationGerman | array | [] |
| location | array | [] |
| company | array | [] |
| softgardenvisibility | array | [] |
| internalPostingName | array | [] |
| listingStartDate | array | [] |
| jobcategory | array | [] |
| projectCompanyNameGerman | array | [] |
Misc
This API uses Semantic Versioning