Jump to content

Join the future of EdTech

Moving data from point A to point B should be safe and easy - and with EduCloud it is! You get all the tools you need to take control over your data and see how and where it is shared in real time.

Sign Up
  • 0

Uppdatera uppgifter.


Alexander Halldén
 Share

Question

Hej

Hur ska man gå tillväga för att uppdatera mailen på en användare? Hittar massa GET, men de POST jag hittar ser jag inte hur det skulle kunna användas för att uppdatera uppgifter på en person. Vi har en koppling till Google och där uppdateras mailen automatiskt, vore bra om vi kan uppdatera allt samtidigt.

Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Hej Alexander.

SS12000 har mer eller mindre bara läsning av data tillgängligt, så att man ska kunna dra ut data från oss.
För att uppdatera mailen så kräver det att man har en integration med oss och då finns det ett par olika lösningar.

  1. Ni genererar en CSV-fil som ni sen laddar upp på en SFTP som sedan importeras.
  2. Ni använder ett integrations-API (dvs inte SS12000) för att importera kontaktuppgifterna
  3. I vissa fall kan vi även hämta CSV-filer från en extern SFTP som ni tillhandahåller.

Alla dessa lösningar innebär att det finns en integrationsaffär gjord dock.
Här kommer några PDFer där du kan läsa mer.

Import av e-postadresser - Elev- IST Administration Kund- och leverantörsdokumentation.pdf
Import av primära kontaktuppgifter (e-post, mobil, telefon) - Person - IST Administration Kund- och leverantörsdokumentation.pdf

Import av kontaktuppgifter - Tjänst - IST Administration Kund- och leverantörsdokumentation.pdf

ps. besvarar detta din fråga så markera gärna frågan som besvarad genom att klicka på checkboxen bredvid denna posten. 👍

Link to comment
Share on other sites

  • 1

@Joakim Ganse Nu har jag fått det här att lira. Du kan följa koden här om du vill.
https://github.com/ist-group/educloud-examples/blob/feature/update-contact-via-import-api/node-example/server/services/import/emailUpdater.js

I kort det du vill göra är:
- Sätta ist-customer-id som nyckel i headern med kundens id som värde (SEXXXXX)
- i POST-bodyn anger du vilken nyckel som helst och lägger dit filen (jag kallar den bara 'file' i exemplet för enkelhetens skull).
- I din request till /se-export/rest/v1/export/import/ behöver du lägga på apiKey som query-parameter. Dvs /se-export/rest/v1/export/import?apiKey=<kundens api-nyckel>
   Notera att detta inte är samma nyckel som du får tillbaks när du autentiserar dig med skolID utan det är en api-nyckel som genereras av oss då då detta är ett special-api.

 

  • Thanks 1
Link to comment
Share on other sites

  • 0

Förstår er problematik, vi har liknande problem.

I vår kommun har vi valt att skapa en SS12000-liknande tjänst som vi låter våra LMS-leverantörer implementera mot vår integrationspunkt.

IST Admin kommer vi dock "mata" med två webService:ar som vi har fått utvecklat sedan tidigare för att uppdatera kontaktuppgifter mot våra IST instanser.

(utklipp från vår spec, lite mystiskt blev det en bild här 🙂

image.thumb.png.af86738dc941b4dd888e2b3980eabd4f.png 

  • Like 1
Link to comment
Share on other sites

  • 0
On 3/23/2022 at 11:26 AM, Jonas Erlandsson said:

Hej Alexander.

SS12000 har mer eller mindre bara läsning av data tillgängligt, så att man ska kunna dra ut data från oss.
För att uppdatera mailen så kräver det att man har en integration med oss och då finns det ett par olika lösningar.

  1. Ni genererar en CSV-fil som ni sen laddar upp på en SFTP som sedan importeras.
  2. Ni använder ett integrations-API (dvs inte SS12000) för att importera kontaktuppgifterna
  3. I vissa fall kan vi även hämta CSV-filer från en extern SFTP som ni tillhandahåller.

Alla dessa lösningar innebär att det finns en integrationsaffär gjord dock.
Här kommer några PDFer där du kan läsa mer.

Import av e-postadresser - Elev- IST Administration Kund- och leverantörsdokumentation.pdf 191.09 kB · 6 downloads
Import av primära kontaktuppgifter (e-post, mobil, telefon) - Person - IST Administration Kund- och leverantörsdokumentation.pdf 298.67 kB · 4 downloads

Import av kontaktuppgifter - Tjänst - IST Administration Kund- och leverantörsdokumentation.pdf 185.28 kB · 5 downloads

ps. besvarar detta din fråga så markera gärna frågan som besvarad genom att klicka på checkboxen bredvid denna posten. 👍

Ok,

Jag ser koden, förstår konceptet men misslyckas med genomförandet.

Exempelkoden är lite knapphändig, vi vill skicka in e-postadresser och har då fått till den här koden i grove:

import java.io.File
import java.nio.file.Files
import java.nio.file.Paths

String fileName = "c:/out/email.csv"
String bodyStr = Files.readString(Paths.get(fileName))
String baseUrl = 'https://se-export-acc.ist.com/se-export/rest/v1/export/import/'
String customerId = 'SE00100'
String apiKey = 'XyZ'

def dataKey = postString(baseUrl, customerId, apiKey, bodyStr)
assertTrue(dataKey != "")

def status = "startad"
while (status.contains("startad")) {
status = getStatus(baseUrl, customerId, dataKey)
}
assertTrue(status != "")
def res = getResult(baseUrl, customerId, dataKey, apiKey)
assertTrue(res != "")

 

Men eftersom jag inte har en aning om vad groove är så blir det att gissa en massa. Bara det att importera filbiblioteket från java tog en stund.
Nu får jag detta felmeddelande:

Exception thrown

groovy.lang.MissingMethodException: No signature of method: sendScript.postString() is applicable for argument types: (String, String, String, String, sendScript$_run_closure1) values: [https://se-export-acc.ist.com/se-export/rest/v1/export/import/, ...]
Possible solutions: toString(), toString()

 

Vilket säkert är ett enkelt fel att lösa om man kan.

Det känns som att dokumentationen saknar ett par steg som dom anser är självklara.

Link to comment
Share on other sites

  • 0

Jag kan göra ett exempel och lägga på github imorgon.

Det kommer inte vara skrivet i Groove, men det kanske kan vara en hjälp att översätta det till det språk du vanligtvis skriver i.
Och bara för att jag är nyfiken, vad kodar du vanligtvis i (jag kanske kan anpassa mitt exempel)?

Link to comment
Share on other sites

  • 0

Kodar egentligen itne alls utan använder en standardprodukt från Microfocus där de har en REST driver som tar hand om hela restanropsdelen. Sedan får jag en xml som jag behandlar mer genom att konfigurera olika regler.
Problemet jag har med den lösningen är att det fungerar extremt bra mot system som skickar förändringar, system där jag behöver läsa in allt varje gång är jobbigare.
Men det blir javascript där det behövs, sql där det behövs mm.

Tror inte att jag förstått om skrivningen till IST Administration är ett rest api.
Därför har jag bara genererat en textfil och följt exemplet i dokumentationen. 
Groove behöver jag inte använda alls men det var det som det stod om.

 

Superbra med ett ordentligt exempel, tack.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. You can also read up on our Privacy Policy