Connector aanroepen via Profit Rest Service
Een externe applicatie roept een Connector aan op basis van een token.
Gebruik de volgende algemene URL's.De REST service moet altijd via https worden aangeroepen.
Let op:
Je vindt alle endpoints voor connectoren op de centrale pagina URL's van REST Services.
Inhoud |
Algemeen
Om data op te halen uit Profit met een externe applicatie heb je het volgende nodig. Zie ook de onderstaande code voorbeelden.
- URL om aan te roepen
De URL kan je samenstellen door via de testtooling op connect.afas.nl de GetConnector uit te voeren. Hier kan je direct filters, sortering en skip/take in de url toevoegen.
- Header key;
De key van de header is altijd: Authorization.
- Header value
De Value van de header begint altijd met: AfasToken + de token als Base64-string
- Script waarmee je de Base64-string via Chrome DevTools Console kan genereren:
$('input').value = "AfasToken " + window.btoa("<token><version>1</version><data> vul hier je token in </data></token>")
REST connector aanroepen met AFAS Connect
- Start https://connect.afas.nl en log in.
- Ga naar: REST/JSON / GetConnectors.
- Gebruik de stappen voor:
Connector aanroepen code-voorbeelden
Deze voorbeelden zijn gemaakt met Windows Powershell. AFAS verleent geen support op dit onderdeel. In de aanroep moet de token geconverteerd worden naar een base64-string.
GetConnector aanroepen:
$token = '<token><version>1</version><data>0E6824699F40129E254DB96441233E32F13454355184E5A24F8E3C0DFA4F</data></token>'
$encodedToken = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($token))
$authValue = "AfasToken $encodedToken"
$Headers = @{
Authorization = $authValue
}
$url = 'https://......./Profitrestservices/connectors/Profit_Article'
$file = '\\yourserver\volume\folder\Getconnector.json'
Invoke-WebRequest -Uri $url -OutFile $file -Headers $Headers
Meta-info ophalen:
$token = '<token><version>1</version><data>0E6824612043AA9E254DB961223DD33E32F14943D93184E5A234553C0DFA4F</data></token>'
$encodedToken = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($token))
$authValue = "AfasToken $encodedToken"
$Headers = @{
Authorization = $authValue
}
Invoke-WebRequest -Uri 'https://....../Profitrestservices//metainfo' -Headers $Headers