> For the complete documentation index, see [llms.txt](https://docs.simutek.se/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.simutek.se/it/api/gks-public-api.md).

# GKS Public API

{% hint style="info" %}
Detta är ett nyare API och ersätter tidigare funktionalitet i [PlaceSimpleOrder API](/it/api/placesimpleorder-api.md).
{% endhint %}

Med följande REST-API går det att ta emot lagda order från din webbshop. Den mottagna försäljningsordern blir underlag för fakturering, men kan även skapa upp tillverkningsorder utifrån kända artikelnummer.

### Skillnader mot PlaceSimpleOrder API

* API:et ligger i molnet och drift ingår vilket gör det enklare att ansluta nya externa system.
* Framtidssäker. Detta API fungerar direkt mot GKS4, men är även bakåtkompatibelt och går att koppla mot GKS3.
* Modernare och enklare teknik med JSON över REST.
* Utökad med ytterligare funktionalitet:
  * Möjlighet att få in artikelnummer.
  * Möjlighet att få [tillverkningsorder att skapas automatiskt](#skapa-tillverkningsorder) för kända artikelnummer.
  * Kunna få in flera leveransadresser per orderrad/produkt. Dvs. en färdig distribution med antal till respektive adress.
  * Möjlighet att få in kostnad per orderrad.
  * Möjlighet att få in en rabattsats.
  * Möjlighet att få in valuta.

### Säkerhet

OAuth 2.0 client credentials flow.

### Teknisk dokumentation

{% openapi src="/files/HNwaM1U82MWWBH9zPGy7" path="/api/v1/salesorders" method="post" %}
[swagger.json](https://2294969563-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M3QX94FdV_9Xy4tUPHP%2Fuploads%2FlAk02AxqKIy9tRjKqq7Y%2Fswagger.json?alt=media\&token=a1f12121-6f8a-417c-8158-7e49a51cfe59)
{% endopenapi %}

## Skapa tillverkningsorder

#### Beskrivning av funktionalitet

Från en inkommande webborder via API:et finns nu möjlighet att automatiskt få tillverkningsorder uppskapade.

Genom att koppla artikelnummer till en utvald produktmall kommer API:et automatiskt kunna skapa upp en tillverkningsorder då den identifierar att en känd artikel har beställts. Tillhörande jobb blir även direkt synligt i GKS Plan för produktionen att påbörja tillverkning. Artikelnumret identifieras om det finns i fältet för artikel på produktmallen.

Tillverkningsordern skapas upp med det inkommande artikelnumret och beskrivningen som kommer in på den fria orderraden från webbportalen. Numret på friordern sätts i början på benämningen för att kunna spåra vilken friorder som fick in beställningen. Webportalens ordernummer sätts också i fältet för beställningsnummer på arbetsordern.

#### Skapa en produktmall för en artikel

Börja med att skapa en kund i företagsregistret med firmanamn `PLACESIMPLEORDER` om denna inte redan är upplagd. Kund-ID kan sättas till valfritt värde.

Skapa därefter en tillverkningsoffert och välj kunden. Lägg därefter till en ny produkt. Sedan sätter du artikelnummer i fält *Mall för artikel*. När allt är klart sparar du offerten. Offerten kan med fördel sparas med 0 i värde.

<figure><img src="/files/csjcinKC9uqkAbSTYwB9" alt=""><figcaption><p>En produktmall med ett artikelnummer.</p></figcaption></figure>

#### Listning av artiklar med produktionsmallar

Kopplingen mellan ett artikelnummer och en mall visas i ett separat program som heter *Produktmallar Place Simple Order* (`Produktmallar.exe`). Programmet finns tillgängligt i GKS3-mappen från och med GKS3 Kalkyl v3.83.1.

Vid start av programmet visas en vy där man ser alla artiklar och till vilka offertmallar som dessa är kopplade till.

<figure><img src="/files/gdUXJQCPQeYOU2ncmMbs" alt=""><figcaption><p>Lista med alla artikelnummer och dess kopplade mall.</p></figcaption></figure>

## GKS3: Installation

I GKS4 finns API tillgängligt som standard, tillsammans med tjänsten för att skapa tillverkningsorder. Om du använder GKS3 behöver du däremot installera både en API-adapter och en tjänst på din serverdator.

#### Installera API-Adapter

1. Ladda ner och installera [ASP.NET Core 8.0 Runtime](https://dotnet.microsoft.com/en-us/download/dotnet/8.0) Hosting Bundle för Windows.
2. Skapa en mapp för API:et, t.ex. `c:\inetpub\wwwroot\gks3api` och lägg filer från paketet du erhållit av Simutek.
3. Kopiera in GKS.INI till mappen.
4. Konvertera appen till en applikation i *IIS Manager*.
5. Testa åtkomst genom en webbläsare: `http://localhost/gks3api/swagger/index.html` .
6. Se till att API:et görs tillgängligt externt via brandvägg.

#### Installera tjänst för att skapa tillverkningsorder

1. Kontrollera att mappen `c:\gks3\PlaceSimpleOrder` finns på serverdator, samt att den innehåller filerna:
   * CreateProdOrderNT.exe
   * dbexpsda41.dll
   * GKS.INI
2. Kör kommando: `CreateProdOrderNT.exe -install`
