Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Model for integration med eksterne systemer

Processer

Levering af jobannoncer til jobnet.dk

Jobannoncer sendes til publicering på jobnet.dk ved at kalde metoden AddJob med de data, der skal indgå i jobannoncen. Herefter sendes jobannoncen straks til godkendelse.

Hvis jobannoncen godkendes, vil jobannoncen blive publiceret på jobnet.dk på det tidspunkt, der er angivet i jobannoncen, og jobannoncen afpubliceres automatisk, når den angivne publiceringsdato udløber.

Hvis jobannoncen ikke godkendes, vil der blive sendt en e-mail til jobannoncens kontaktperson, der beskriver årsagen til at jobannoncen ikke kunne godkendes. Jobannoncen kan opdateres ved at kalde metoden UpdateJob med revideret indhold og derefter kalde PublishJob.

En jobannonce kan afpubliceres på jobnet.dk ved at kalde CloseJob.

En jobannonce kan slettes fra jobnet.dk ved at kalde DeleteJob.

Arbejdsgivere vil kunne se deres egne (identificeret ved CVR-nummer) jobannoncer på Jobnet for Arbejdsgivere uanset status (godkendt, publiceret, ikke-godkendt mv).

Afhentning af publicerede jobannoncer fra jobnet.dk

Du kan hente alle publicerede jobannoncer på jobnet.dk ved først at fremsøge jobannoncerne ved kald af metoden SearchJob med de ønskede fremsøgningskriterier. Bemærk, at SearchJob anvender paging, dvs. at man skal kalde metoden med fortløbende sidenumre indtil alle jobannoncer er fremsøgt. Man kan hente jobannoncernes indhold ved at kalde GetJob for hver jobannonce med det ID, der er returneret af SearchJob.

Bemærk, at man kun kan fremsøge og hente publicerede jobannoncer, samt at det kun er offentligt tilgængeligt indhold på jobannoncerne, der returnes

...

Når en borger ønsker at hente sit CV ned til en trediepart (Kunde til CV)  anvendes følgende model

Drawio
simple0
zoom1
inComment0
custContentId2091548843
pageId2088468736
diagramDisplayNameToken model.drawio
lbox1
contentVer3
revision3
baseUrlhttps://starwiki.atlassian.net/wiki
diagramNameToken model.drawio
pCenter0
width763
links
tbstyle
height401

Trin 1 Token hentes

  1. Borger efterspørger load af CV fra Jobnet
  2. Trediepartsystem (kundesystem) redirecter borger til dedikeret loginside på Jobnet
  3. Borger giver Jobnet login informationer
  4. Hvis Borger login er succesfuldt og trediepart (kundesystem) er kendt i DFDG fås Token med tilbage til trediepartsystem (kundesystem) 

Trin 2 CV hentes

  1. Trediepart (kundesystem) kalder GetCVOnTokeni DFDG, med token
  2. Hvis Token er valid modtages CV informationer

Processer

Denne model understøtter kun når borger ønsker at upload sit CV til trediepart (kundesystem).

Før trediepart (kundesystem) kan hente et CV skal følgende være opfyldt

  • Trediepart (kundesystem) skal har en tilslutningsaftale til DFDG
  • Have hentet en token for borgeren

Token

En token udstedes:

  • Til en given trediepart (kundesystem)
  • På en given borger 
  • I en given kontekst 
  • Med en given gyldighedsperioden

Konteksten (tokentypen) vil i denne sammenghæng være "Hent CV"

Gyldighedsperioden vil for at hente CV oplysninger vil være en periode på 24 timer. Dvs. trediepart (kundesystem) kan kun hente CV oplysninger i en 24 timers periode efter token er udstedt. 

Bemærk: Kun CV oplysninger der er tilgængelige for trediepart medtages.

Procedure for tilslutning til CV webservice

Nye brugere, der er interesseret i at bruge JobAD CV webservice, skal starte med at kontakte Dorthe Uglebjerg.STAR og XXXXXX person. Selve tilslutningen vil ske i gennem STAR's systemforvalter

Telefon og mail

En indledende afklaring kan foregå via telefon på 72 21 75 77 XXXXXX, men processen startes først, når der sendes en mail på XXXXXDUG@star.dk. I mailen skal det fremgå:

  • Hvem der er den nye kunde, adresse, firmanavn, kontaktperson og kontaktoplysninger
  • Hvilke(en) af de to roller, der ønskes at få adgang til at bruge: Publicering af jobannoncer på jobnet.dk eller Afhentning af publicerede jobannoncer fra jobnet.dk
  • Hvad webservice adgangen skal bruges til, fx visning af job på egen hjemmesidei hvilken sammenhæng Cv oplysningerne ønskes anvendt

Efter modtagelse af mail oprettes en intern sag i STAR, og webservice supporten (systemforvalter) får besked om, at give den nye kunde adgang til relevant web-service test-miljø.

...

Terdiepart (kunden) går i gang

Den nye terdiepart (kunde) udvikler herefter det software, der skal ende med, at de kan udveksle data med Jobnets CV webservicer. Udviklingstiden afhænger af de kompetencer og forudsætninger kunden råder over. Styrelsen for Arbejdsmarked og Rekruttering (STAR) udvikler ikke noget i forbindelse med oprettelse af nye web-service kunder, men stiller blot eksisterende webservicer og viden til rådighed.

Support

Alle nye tredieparter (kunder) får fem timers gratis support fra webservice supporten (systemforvalter). De fem timer kan bruges i udviklingsperioden og i den efterfølgende drift. Support ud over fem timer skal godkendes af STAR XXXX Dorthe Uglebjerg. Hvis det fravælges at betale for yderligere support, faktureres denne support mellem den nye kunde og web-service supporten (systemforvalter) og er Styrelsen for Arbejdsmarked og Rekruttering (STAR) uvedkommende.

Testmiljø og integrationstest

Du Trediepart (kunden) skal have gennemført  integrationstest inden du kan publicere jobannoncer på Jobnetog dokumenterer en integrationstest overfor STAR og webservice supporten (systemforvalter) inden det er muligt at hente CV oplysninger fra DFDG. Integrationstesten gennemføres på et testmiljø, hvor JobAD CV webservicen har følgende URLendpoint: ???XXXXX.

Du Trediepart kan fremsøge og vise dine (og andres) jobannoncer på Jobnet i testmiljøet.generere og hente CV oplysninger på udvalgte test borgere i det/de aftalte testmiljøet.

Model for testdata til integrationstest

  1. Trediepart (kunden) oprettes et NemID på en testbruger hos NemID
  2.  

Efter test

Testen er velgennemført, når webservice supporten meddeler, at der ingen fejl er i udveksling af data mellem kundens system og test-miljøet.

...

Herunder finder du eksempler på kald af webservicen, dels som SOAP requests og response, dels som et C# projekt.

Eksempler på SOAP kald

Fælles for disse eksempler er at [brugernavn] og [adgangskode] skal erstattes med faktiske værdier.

AddJob - opret jobannonce på jobnet.dk

Dette SOAP kald opretter en jobannonce på jobnet.dk. Ved succesfuld oprettelse returneres jobannoncens ID.

Request:

...

.

...

Påkrævet felter

Det kan være svært at se hvilke felter der påkrævet ud fra requestet. Men følgende felter kræves udfyldt:

<job:JobAdDetails>
   <job:Type>...</job:Type>
</job:JobAdDetails>

<ApplicationDetails>
   <JobContactList>
      <PersonNameStructure>
           <PersonGivenName>...</PersonGivenName>
           <PersonSurnameName>...</PersonSurnameName>
      </PersonNameStructure>
   </JobContactList>
</ApplicationDetails>

<HiringOrganizationDetails>
    <AddressStructure>
       <Contact>
           <PersonNameStructure>
               <PersonGivenName>...</PersonGivenName>
               <PersonSurnameName>...</PersonSurnameName>
           </PersonNameStructure>
       </Contact>
    </AddressStructure>
</HiringOrganizationDetails>

Response:

...

SearchJob - søg publicerede jobannoncer

Dette SOAP kald fremsøger aktuelt publicerede jobannonce på jobnet.dk.

Request:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:job="http://jobnet.af.dk/JobAdService" xmlns:job1="http://schemas.datacontract.org/2004/07/JobAdService.DataContract">
<soapenv:Header>

<job:Credentials>
<job1:Password>[adgangskode]</job1:Password>
<job1:Username>[brugernavn]</job1:Username>
</job:Credentials>
</soapenv:Header>
<soapenv:Body>
<job:SearchJobRequestType>
<job:SearchParameters>
<job:CreatedFrom>2001-01-01</job:CreatedFrom>
<job:CreatedTo>2018-01-01</job:CreatedTo>
</job:SearchParameters>
</job:SearchJobRequestType>
</soapenv:Body>
</soapenv:Envelope>

Da dette request potentielt kan levere ganske mange søgeresultater kan man med fordel sætte paging op eller præcisere søgningen med fx JobAttributes.

Request:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:job="http://jobnet.af.dk/JobAdService" xmlns:job1="http://schemas.datacontract.org/2004/07/JobAdService.DataContract">
<soapenv:Header>

<job:Credentials>
<job1:Password>[adgangskode]</job1:Password>
<job1:Username>[brugernavn]</job1:Username>
</job:Credentials>
</soapenv:Header>
<soapenv:Body>
<job:SearchJobRequestType>
<job:SearchParameters>
<job:CompanyName>FØTEX</job:CompanyName>
<job:CreatedFrom>2017-01-01</job:CreatedFrom>
<job:CreatedTo>2018-01-01</job:CreatedTo>
<job:JobAttributes>
<job:JobAttribute>WorkInDenmark</job:JobAttribute>
<job:JobAttribute>EURES</job:JobAttribute>
<job:JobAttribute>Foreign</job:JobAttribute>
<job:JobAttribute>State</job:JobAttribute>
</job:JobAttributes>
</job:SearchParameters>
</job:SearchJobRequestType>
</soapenv:Body>
</soapenv:Envelope>

Response:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<SearchJobResponse xmlns="http://jobnet.af.dk/JobAdService">
<SearchJobResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<SearchResult>
<Created>2017-02-14T00:00:00</Created>
<JobAdId>4410682</JobAdId>
<NumberOfViews>0</NumberOfViews>
<OccupationName i:nil="true"/>
<PublishedBy i:nil="true"/>
<PublishedFrom>9999-12-31T00:00:00</PublishedFrom>
<PublishedTo>9999-12-31T00:00:00</PublishedTo>
<Status>NotReady</Status>
<Title/>
</SearchResult>
<SearchResult>
<Created>2017-02-14T00:00:00</Created>
<JobAdId>4410850</JobAdId>
<NumberOfViews>0</NumberOfViews>
<OccupationName i:nil="true"/>
<PublishedBy i:nil="true"/>
<PublishedFrom>9999-12-31T00:00:00</PublishedFrom>
<PublishedTo>9999-12-31T00:00:00</PublishedTo>
<Status>NotReady</Status>
<Title/>
</SearchResult>
</SearchJobResult>
</SearchJobResponse>
</s:Body>
</s:Envelope>

GetJob - hent jobannonce

Dette SOAP kald henter en jobannonce, som er fremsøgt i listen herover

[id] skal erstattes med et kendt JobAdId.

Request:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:job="http://jobnet.af.dk/JobAdService" xmlns:job1="http://schemas.datacontract.org/2004/07/JobAdService.DataContract">
<soapenv:Header>

<job:Credentials>
<job1:Password>[adgangskode]</job1:Password>
<job1:Username>[brugernavn]</job1:Username>
</job:Credentials>
</soapenv:Header>
<soapenv:Body>
<job:GetJobRequestType>
<job:JobAdId>[id]</job:JobAdId>
</job:GetJobRequestType>
</soapenv:Body>
</soapenv:Envelope>

Response:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<GetJobResponseType xmlns="http://jobnet.af.dk/JobAdService">
<JobAd xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<ApplicationDetails>
<ApplicationMethods>
<ApplyByEmail>
<Email>test@igen.dk</Email>
</ApplyByEmail>
<ApplyByLetter>false</ApplyByLetter>
<ApplyByTelephone>
<TelephoneNumber>33445566</TelephoneNumber>
</ApplyByTelephone>
<ApplyOnline i:nil="true"/>
</ApplicationMethods>
<Description i:nil="true"/>
<JobContactList xmlns:a="http://schemas.datacontract.org/2004/07/JobAdService.v1.DataContract">
<a:JobContactType>
<Email>test@mer.dk</Email>
<PersonNameStructure>
<PersonGivenName>Anders</PersonGivenName>
<PersonSurnameName>And</PersonSurnameName>
</PersonNameStructure>
<Title>Entreprenør</Title>
<a:HidePhoneNumbers>false</a:HidePhoneNumbers>
<a:TelephoneNumberStructure>
<MobileNumber/>
<PrimaryNumber>55667788</PrimaryNumber>
<SecondaryNumber/>
<Telefax>55667789</Telefax>
</a:TelephoneNumberStructure>
</a:JobContactType>
</JobContactList>
<Referral>Karsten Elbæk</Referral>
</ApplicationDetails>
<HiringOrganizationDetails>
<AddressStructure>
<CountryCode>DK</CountryCode>
<FloorIdentifier/>
<MunicipalityId>360</MunicipalityId>
<MunicipalityName>Lolland</MunicipalityName>
<PostalCity>Maribo</PostalCity>
<PostalCode>4930</PostalCode>
<StreetBuildingIdentifier>7</StreetBuildingIdentifier>
<StreetName>V Henriksens Vej</StreetName>
<SuiteIdentifier/>
</AddressStructure>
<BranchCode i:nil="true"/>
<BranchDescription i:nil="true"/>
<Contact xmlns:a="http://schemas.datacontract.org/2004/07/JobAdService.v1.DataContract">
<Email>mne@mne.dk</Email>
<PersonNameStructure>
<PersonGivenName i:nil="true"/>
<PersonSurnameName i:nil="true"/>
</PersonNameStructure>
<Title i:nil="true"/>
<a:PrimaryNumber>55667788</a:PrimaryNumber>
<a:SecondaryNumber i:nil="true"/>
<a:Telefax>55667789</a:Telefax>
</Contact>
<CvrNumber>24212254</CvrNumber>
<Name>M.N. Entreprise A/S</Name>
<PNumber>1006412573</PNumber>
<Url/>
</HiringOrganizationDetails>
<Id>1188921</Id>
<JobAdDetails>
<JobPublishDates>
<LastModifiedDate>2007-12-13T16:47:32.05</LastModifiedDate>
<PublishEndDate>2017-09-10T00:00:00</PublishEndDate>
<PublishStartDate>2017-08-02T00:00:00</PublishStartDate>
</JobPublishDates>
<NumberOfReadsByCitizen>504</NumberOfReadsByCitizen>
<PostedBy i:nil="true" xmlns:a="http://schemas.datacontract.org/2004/07/JobAdService.v1.DataContract"/>
<Status>PublicationEnd</Status>
<Type>Normal</Type>
</JobAdDetails>
<JobDetails>
<AuthorityId>0</AuthorityId>
<AuthorityPhoneNumber/>
<Classification>
<EmploymentType>PermanentJob</EmploymentType>
<IsEuresJob>false</IsEuresJob>
<IsPublicSectorJob>false</IsPublicSectorJob>
</Classification>
<Description>Tømrersvende søges til selvstændigt arbejde. Må kunne tale og forstå dansk. Henvendelse til Karsten Elbæk på tlf. 20826213 eller Martin Nielsen tlf. 25377500.</Description>
<DriversLicences/>
<HidePhonenumbers>false</HidePhonenumbers>
<IsAnonymousEmployer>false</IsAnonymousEmployer>
<IsDisabilityFriendly>false</IsDisabilityFriendly>
<JobDates>
<ApplicationDeadlineDate>2017-09-10T00:00:00</ApplicationDeadlineDate>
<EmploymentDate i:nil="true"/>
<StartAsSoonAsPossible>true</StartAsSoonAsPossible>
</JobDates>
<JobLocation>
<Address>
<CountryCode>DK</CountryCode>
<FloorIdentifier i:nil="true"/>
<MunicipalityId>360</MunicipalityId>
<MunicipalityName>Lolland</MunicipalityName>
<PostalCity i:nil="true"/>
<PostalCode i:nil="true"/>
<StreetBuildingIdentifier i:nil="true"/>
<StreetName i:nil="true"/>
<SuiteIdentifier i:nil="true"/>
</Address>
<NoLocalBusinessAddress>false</NoLocalBusinessAddress>
</JobLocation>
<NumberOfPositions>3</NumberOfPositions>
<OccupationId>7115101</OccupationId>
<Schedule>
<DailyWorkTime>
<Day>false</Day>
<Evening>false</Evening>
<Night>false</Night>
<Weekend>false</Weekend>
</DailyWorkTime>
<WeeklyWorkTimeTypes>FullTime</WeeklyWorkTimeTypes>
<WorkHour>
</WorkHour>
</Schedule>
<Title>Tømrer/Snedkere søges</Title>
</JobDetails>
</JobAd>
</GetJobResponseType>
</s:Body>
</s:Envelope>

Fejlkoder

Dette SOAP kald returnerer en fejlkode på grund af valideringsfejl. Se oversigt over fejlkoder her

Eksempel på kald med ugyldigt JobAdID.

Request:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:job="http://jobnet.af.dk/JobAdService" xmlns:job1="http://schemas.datacontract.org/2004/07/JobAdService.DataContract">
<soapenv:Header>

<job:Credentials>
<job1:Password>[adgangskode]</job1:Password>
<job1:Username>[brugernavn]</job1:Username>
</job:Credentials>
</soapenv:Header>
<soapenv:Body>
<job:GetJobRequestType>
<job:JobAdId>42</job:JobAdId>
</job:GetJobRequestType>
</soapenv:Body>
</soapenv:Envelope>

Response:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<s:Fault>
<faultcode>s:Client</faultcode>
<faultstring xml:lang="en-US">JobAd exception when calling GetJob method. Details: The job with id 42 could not be found</faultstring>
<detail>
<JobAdFault xmlns="http://jobnet.af.dk/JobAdService" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Code>JobAdNotFound</Code>
<Message>JobAd exception when calling GetJob method. Details: The job with id 42 could not be found</Message>
</JobAdFault>
</detail>
</s:Fault>
</s:Body>
</s:Envelope>

Eksempel i C#

Her vises et eksempel hvordan et kald til JobAdService skabes med C#. Her er vist et kald til hhv. funktionen GetJob og SearchJob.

private void GetJob()
{
    JobAddServiceClient jobAdService = new JobAddServiceClient("IJobAddService");
    JobAd jobb = jobAdService.GetJob(new Credentials { Username = [brugernavn], Password = [adgangskode] }, 4534569);
    Console.WriteLine(jobb);

}

private void SearchJob()
{
   JobAddServiceClient jobAdService = new JobAddServiceClient("IJobAddService");
   SearchParameters sp = new SearchParameters();
   sp.CreatedFrom = DateTime.Now.AddDays(-400);
   sp.CreatedTo = DateTime.Now;
   sp.PageSize = 10;
   sp.PageNumber = 0;
   sp.Status = Status.Publication;
   sp.JobAttributes = new JobAttribute[] { JobAttribute.EURES };
   SearchResult[] jobs = jobAdService.SearchJob(new Credentials { Username = [brugernavn], Password = [adgangskode] }, sp);
   Console.WriteLine(jobs);

}

Her kan du se en demo console application i c#.

View filenameTestJobAd.zipheight250



Child pages (Children Display)