diff --git a/README.md b/README.md index 4a932b3..f89eadb 100644 --- a/README.md +++ b/README.md @@ -3,26 +3,11 @@ Die Bundesagentur für Arbeit verfügt über eine der größten Datenbanken für ## Authentifizierung -Die Authentifizierung funktioniert per OAuth 2 Client Credentials mit JWTs. -Client Credentials sind, wie https://www.arbeitsagentur.de/bewerberboerse/config/config.js zu entnehmen ist, folgende: +Die Authentifizierung funktioniert über die clientId der Bewerberbörse: -**client_id:** 919b0af7-6e5f-4542-a7f5-04268b8bae2e +clientId: jobboerse-bewerbersuche-ui -**client_secret:** 93fce94c-5be2-4dc8-b040-c62818a4b003 - -**grant_type:** client_credentials - -Die Credentials sind im body eines POST-request an https://rest.arbeitsagentur.de/oauth/gettoken_cc zu senden. - -```bash -token=$(curl \ --d "client_id=919b0af7-6e5f-4542-a7f5-04268b8bae2e&client_secret=93fce94c-5be2-4dc8-b040-c62818a4b003&grant_type=client_credentials" \ --X POST 'https://rest.arbeitsagentur.de/oauth/gettoken_cc' |grep -Eo '[^"]{400,}'|head -n 1) -``` - -Der generierte Token muss bei folgenden GET-requests an https://rest.arbeitsagentur.de/jobboerse/bewerbersuche-service/pc/v1/bewerber im header als 'OAuthAccessToken' inkludiert werden. - -**Hinweis:** Alternativ kann man bei folgenden GET-requests auch direkt die *client_id* als Header-Parameter *'X-API-Key'* übergeben - *'OAuthAccessToken'* ist in diesem Fall nicht erforderlich. 🚀 +Bei folgenden GET-requests ist die clientId als Header-Parameter 'X-API-Key' zu übergeben. ## Bewerbendenbörse @@ -121,7 +106,7 @@ Anzahl der Ergebnisse ```bash bewerbende=$(curl -m 60 \ --H "OAuthAccessToken: $token" \ +-H "X-API-Key: jobboerse-bewerbersuche-ui" \ 'https://rest.arbeitsagentur.de/jobboerse/bewerbersuche-service/pc/v1/bewerber?angebotsart=ar&wo=Feucht&umkreis=0&page=0&size=25') ``` @@ -138,6 +123,6 @@ u.a. Bildungshistorie, beruflicher Werdegang, Lizenzen, Kenntnisse & Skills. ```bash bewerbendendetails=$(curl -m 60 \ --H "OAuthAccessToken: $token" \ +-H "X-API-Key: jobboerse-bewerbersuche-ui" \ 'https://rest.arbeitsagentur.de/jobboerse/bewerbersuche-service/pc/v1/bewerberdetails/10005-955011998040991647-B') ``` diff --git a/api_example.R b/api_example.R index 44ccd86..eed17d6 100644 --- a/api_example.R +++ b/api_example.R @@ -3,17 +3,10 @@ #---------------- install.packages(c("devtools","jsonlite","httr")) devtools::install_github("AndreasFischer1985/qqBaseX") -clientId="919b0af7-6e5f-4542-a7f5-04268b8bae2e" -clientSecret="93fce94c-5be2-4dc8-b040-c62818a4b003" +clientId="jobboerse-bewerbersuche-ui" -postData=list( "grant_type"="client_credentials","client_id"=clientId,"client_secret"=clientSecret) -token_request=httr::POST( - url="https://rest.arbeitsagentur.de/oauth/gettoken_cc", - body=postData,encode="form", - config=httr::config(connecttimeout=60)) -token=httr::content(token_request, as='parsed')$access_token url="https://rest.arbeitsagentur.de/jobboerse/bewerbersuche-service/pc/v1/bewerber?angebotsart=ar" -data_request=httr::GET(url=url, httr::add_headers(.headers=c("OAuthAccessToken"=token)), +data_request=httr::GET(url=url, httr::add_headers(.headers=c("X-API-Key"=clientId)), config=httr::config(connecttimeout=60)) data_request data=httr::content(data_request) diff --git a/openapi.yaml b/openapi.yaml index 3d073cd..b8fbef3 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -3,16 +3,13 @@ info: title: "Arbeitsagentur Bewerberbörse API" description: | - Eine der größten Datenbanken für Bewerbende in Deutschland durchsuchen. - - Die Authentifizierung funktioniert per OAuth 2 Client Credentials mit JWTs. Folgende Client-Credentials können dafür verwendet werden: - - **ClientID:** 919b0af7-6e5f-4542-a7f5-04268b8bae2e - - **ClientSecret:** 93fce94c-5be2-4dc8-b040-c62818a4b003 - - **Achtung**: der generierte Token muss bei folgenden GET-requests im header als *'OAuthAccessToken'* inkludiert werden. Alternativ kann man bei folgenden GET-requests auch direkt die *client_id* als Header-Parameter *'X-API-Key'* übergeben - *'OAuthAccessToken'* ist in diesem Fall nicht erforderlich. 🚀 - version: "1.0.0" + Die Authentifizierung funktioniert über die clientId der Bewerberbörse: + + **clientId:** jobboerse-bewerbersuche-ui + + Bei folgenden GET-requests ist die clientId als Header-Parameter 'X-API-Key' zu übergeben. + + version: "1.0.1" contact: name: "AndreasFischer1985" email: "andreasfischer1985@web.de" @@ -183,7 +180,7 @@ components: type: apiKey in: header name: X-API-Key - description: "X-API-Key ist die Client-ID 919b0af7-6e5f-4542-a7f5-04268b8bae2e" + description: "X-API-Key ist die Client-ID jobboerse-bewerbersuche-ui" schemas: Response: