Compare commits

..

No commits in common. "b8dd854805c6097fb85162582b4d18463c205a3f" and "bc50dc58eaef93f34c5b5779a62fc120b3e07f39" have entirely different histories.

18 changed files with 403 additions and 19 deletions

View File

@ -4,6 +4,7 @@ info:
version: '1.0'
servers:
- url: https://services.acc.api.htm.nl/chipkaart/1.0
- url: http://services.acc.api.htm.nl/chipkaart/1.0
security:
- default: []
tags:

View File

@ -4,7 +4,7 @@ info:
version: "1.0"
description: CRUD APIs for ABT Contract database. These are NOT the functional APIs from Service Engine.
servers:
- url: https://services.acc.api.htm.nl/abt/abtcontracts/1.0
- url: https://api.integratielaag.nl/v1
paths:
/customers/{customerNumber}/contracts:
parameters:

View File

@ -4,7 +4,7 @@ info:
version: "1.0"
description: Service Engine APIs for ABT Contracts v2. These are NOT the CRUD APIs to the data hub.
servers:
- url: https://services.acc.api.htm.nl/abt/touchpoint/1.0
- url: https://api.integratielaag.nl/abt/touchpoint/1.0
paths:
/customers/contracts:
parameters:

View File

@ -6,7 +6,7 @@ info:
To be used by touchpoints to get information about HTM customers.
version: "1.0"
servers:
- url: https://services.acc.api.htm.nl/abt/touchpoint/1.0
- url: https://api.integratielaag.nl/v1/touchpoint
tags:
- name: Customers
description: >-

View File

@ -4,7 +4,7 @@ info:
version: "2.0"
description: CRUD APIs for ABT Customer database. These are NOT the functional APIs from Service Engine.
servers:
- url: https://services.acc.api.htm.nl/abt/abtcustomers/2.0
- url: https://api.integratielaag.nl/abt/abtcustomers/2.0
paths:
/customers:
get:

View File

@ -4,6 +4,7 @@ info:
version: '1.0'
servers:
- url: https://services.acc.api.htm.nl/abt/abtcustomers/1.0
- url: http://services.acc.api.htm.nl/abt/abtcustomers/1.0
security:
- default: []
tags:

View File

@ -3,7 +3,8 @@ info:
title: ABTCustomerReference
version: '1.0'
servers:
- url: https://services.acc.api.htm.nl/abt/customerreference/1.0
- url: https://services.dev.api.htm.nl/abt/customerreference/1.0
- url: http://services.dev.api.htm.nl/abt/customerreference/1.0
security:
- default: []
tags:

View File

@ -6,7 +6,7 @@ info:
CRUD APIs for FIKO resource model v2.2. This version of the API corresponds with version 2.2
of the data model in [Lucid Chart](https://lucid.app/lucidchart/50c0ff9d-48ba-4ea9-8182-10bede07d3b1/edit?page=LL7PJg1Y_GOA>).
servers:
- url: https://services.acc.api.htm.nl/fiko/1.0
- url: https://api.integratielaag.nl/fiko/1.0
paths:
/Odata/TransactionItem:
get:

View File

@ -0,0 +1,381 @@
openapi: 3.0.1
info:
title: ABTFikoReference
description: |-
CRUD APIs for FIKO reference data (based on the v1 model for FIKO, see [the FIKO v1 datamodel in Lucid](https://lucid.app/lucidchart/50c0ff9d-48ba-4ea9-8182-10bede07d3b1/edit?viewport_loc=145%2C-316%2C2782%2C1418%2C0_0&invitationId=inv_1cd35e35-77f5-4e31-87d6-32fd74400350)). This means that, for now, only GET endpoints on `TaxMetadata` and `ProductGroupMetadata` (already named `ProductMetadata` to avoid rework for v2) are available.
When the v2 model for FIKO is implemented (see [the FIKO v2 datamodel in Lucid](https://lucid.app/lucidchart/50c0ff9d-48ba-4ea9-8182-10bede07d3b1/edit?viewport_loc=-72%2C-954%2C2406%2C1226%2CUnjZp4g0O~CK&invitationId=inv_1cd35e35-77f5-4e31-87d6-32fd74400350)), POST/PUT/DELETE for these tables (as well as CRUD for additional tables) will become available, to support populating the reference tables with Unit4Financials data.
These are NOT functional API's to be published by the Service Engine, but are direct CRUD API's on top of the database.
version: '1.0'
servers:
- url: https://api.integratielaag.nl/abt/fikoreference/1.0
tags:
- name: ABTFikoReference CRUD v1
description: >-
CRUD APIs for FIKO reference data (based on the v1 model for FIKO, see [the FIKO v1 datamodel in Lucid](https://lucid.app/lucidchart/50c0ff9d-48ba-4ea9-8182-10bede07d3b1/edit?viewport_loc=145%2C-316%2C2782%2C1418%2C0_0&invitationId=inv_1cd35e35-77f5-4e31-87d6-32fd74400350)).
- name: ABTFikoReference CRUD v2
description: >-
CRUD APIs for FIKO reference data (based on the v2 model for FIKO, see [the FIKO v2 datamodel in Lucid](https://lucid.app/lucidchart/50c0ff9d-48ba-4ea9-8182-10bede07d3b1/edit?viewport_loc=-72%2C-954%2C2406%2C1226%2CUnjZp4g0O~CK&invitationId=inv_1cd35e35-77f5-4e31-87d6-32fd74400350)).
paths:
/taxmetadata:
get:
tags:
- ABTFikoReference CRUD v1
summary: Get a list of all possible values of the "TaxMetadata" reference table. Mainly used for populating dropdown lists (in PMT for example).
description: |-
Get a list of all possible values of the `TaxMetadata` reference table. Mainly used for populating dropdown lists (in PMT for example).\
The attributes `validFrom` and `validUntil` are not yet present in the FIKO v1 datamodel, but are already included in this resourcemodel; to prevent rework in the near future.\
For now, for `validFrom`, the value will always be returned as `2024-01-01T00:00:00.000+00:00` and for `validUntil` it will always be `null`.
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/TaxMetadataListResponse'
examples:
getListTaxMetadataSales:
summary: List containing three TaxMetadata entries, used for sales tax
value:
{
"Entries": [
{
"taxMetadataId": "61A148AF-6DCB-4BB6-9D3F-17A8B627F745",
"taxCode": "V21",
"taxPercentageAmount": 21,
"description": "BTW VERKOOP HOOG 21%",
"validFrom": "2024-01-01T00:00:00.000+00:00",
"validUntil": null
},
{
"taxMetadataId": "47C8972E-A730-4032-9BDA-AF0A5BCB2C85",
"taxCode": "V09",
"taxPercentageAmount": 9,
"description": "BTW VERKOOP LAAG 9%",
"validFrom": "2024-01-01T00:00:00.000+00:00",
"validUntil": null
},
{
"taxMetadataId": "AC20A838-C81B-4652-96EA-F6E79E696E9C",
"taxCode": "V0",
"taxPercentageAmount": 0,
"description": "BTW VERKOOP NUL",
"validFrom": "2024-01-01T00:00:00.000+00:00",
"validUntil": null
}
]
}
getListTaxMetadataSalesAndPurchase:
summary: List containing x TaxMetadata entries, used for sales and purchase tax
value:
{
"Entries": [
{
"taxMetadataId": "61A148AF-6DCB-4BB6-9D3F-17A8B627F745",
"taxCode": "V21",
"taxPercentageAmount": 21,
"description": "BTW VERKOOP HOOG 21%",
"validFrom": "2024-01-01T00:00:00.000+00:00",
"validUntil": null
},
{
"taxMetadataId": "47C8972E-A730-4032-9BDA-AF0A5BCB2C85",
"taxCode": "V09",
"taxPercentageAmount": 9,
"description": "BTW VERKOOP LAAG 9%",
"validFrom": "2024-01-01T00:00:00.000+00:00",
"validUntil": null
},
{
"taxMetadataId": "AC20A838-C81B-4652-96EA-F6E79E696E9C",
"taxCode": "V0",
"taxPercentageAmount": 0,
"description": "BTW VERKOOP NUL",
"validFrom": "2024-01-01T00:00:00.000+00:00",
"validUntil": null
},
{
"TBD": "TBD"
},
{
"TBD": "TBD"
},
{
"TBD": "TBD"
}
]
}
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: '401'
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/404Response'
'500':
description: '500'
content:
application/json:
schema:
$ref: '#/components/schemas/500Response'
/productmetadata:
get:
tags:
- ABTFikoReference CRUD v1
summary: Get a list of all possible values of the "ProductMetadata" reference table. Mainly used for populating dropdown lists (in PMT for example).
description: |-
Get a list of all possible values of the `ProductGroupMetadata` (soon to be renamed to `ProductMetadata`) reference table. Mainly used for populating dropdown lists (in PMT for example).\
The name of the entity is `ProductGroupMetadata` in the FIKO v1 datamodel, but the resourcemodel already uses the name `ProductMetadata`, as will be the name from FIKO v2 onwards.\
This also applies to the attributes `productMetadataId` (still called `ProductGroupMetadataId` in FIKO v1), `productCode` (still called `productGroupCode` in FIKO v1) and `user` (present in FIKO v1, but removed in FIKO v2, so also in this resourcemodel).
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ProductMetadataListResponse'
examples:
getListProductMetadata:
summary: List containing one ProductMetadata entry, used for testing purposes
value:
{
"Entries": [
{
"productMetadataId": "501B17EF-36C4-4039-B92C-6517969B464E",
"productCode": "PG001",
"department": "Electronics",
"costCenter": "CC101",
"costType": "TypeA",
"description": "Group for electronic products",
"documentCode": "DOC001",
"timestampUpdated": "2024-09-03T15:07:53.470+00:00",
"validFrom": "2024-08-01T00:00:00.000+00:00",
"validUntil": "2025-08-01T00:00:00.000+00:00"
}
],
}
'400':
description: '400'
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: '401'
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'404':
description: '404'
content:
application/json:
schema:
$ref: '#/components/schemas/404Response'
'500':
description: '500'
content:
application/json:
schema:
$ref: '#/components/schemas/500Response'
components:
schemas:
TaxMetadataListResponse:
type: object
required:
- Entries
properties:
Entries:
type: array
items:
$ref: '#/components/schemas/TaxMetadataResponse'
ProductMetadataListResponse:
type: object
required:
- Entries
properties:
Entries:
type: array
items:
$ref: '#/components/schemas/ProductMetadataResponse'
TaxMetadataResponse:
type: object
required:
- taxMetadataId
- taxCode
- taxPercentageAmount
- validFrom
properties:
taxMetadataId:
type: string
format: uuid
example: 501B17EF-36C4-4039-B92C-6517969B464E
taxCode:
type: string
example: V09
taxPercentageAmount:
type: integer
example: 21
description:
type: string
example: BTW VERKOOP LAAG 9%
validFrom:
type: string
format: date-time-offset
example: '2024-09-03T10:01:34.000+00:00'
validUntil:
type: string
format: date-time-offset
example: '2024-09-03T10:01:34.000+00:00'
ProductMetadataResponse:
type: object
required:
- productMetadataId
- productCode
- department
- costCenter
- costType
- description
- documentCode
- timestampUpdated
- validFrom
properties:
productMetadataId:
type: string
format: uuid
example: 501B17EF-36C4-4039-B92C-6517969B464E
productCode:
type: string
description: Called "artikelnr" in U4F
example: TBD
department:
type: string
description: Called "element 1" in U4F
example: TBD
costCenter:
type: string
description: Called "element 3" in U4F
example: TBD
costType:
type: string
description: Called "element 2" in U4F
example: TBD
description:
type: string
example: TBD
documentCode:
type: string
example: TBD
timestampUpdated:
type: string
format: date-time-offset
example: '2024-09-03T10:01:34.000+00:00'
validFrom:
type: string
format: date-time-offset
example: '2024-09-03T10:01:34.000+00:00'
validUntil:
type: string
format: date-time-offset
example: '2024-09-03T10:01:34.000+00:00'
400Response:
type: object
properties:
code:
type: string
example: '400'
type:
type: string
message:
type: string
example: Bad Request
description:
type: string
example: '''2023-02-01 00:00:00'' is not a valid Datetime'
apiErrorCode:
type: string
example: htm.api.err.40xxx
401Response:
type: object
properties:
code:
type: string
example: '900901'
type:
type: string
message:
type: string
example: Invalid Credentials
description:
type: string
example: >-
Invalid Credentials. Make sure you have provided the correct
security credentials
apiErrorCode:
type: string
example: htm.api.err.40xxx
403Response:
type: object
properties:
code:
type: string
example: '900901'
type:
type: string
message:
type: string
example: Retailer not authorized
description:
type: string
example: The retailer is not allowed to access resource for requested
apiErrorCode:
type: string
example: htm.api.err.40xxx touchpoint
404Response:
type: object
properties:
code:
type: string
example: '404'
type:
type: string
example: Status report
message:
type: string
example: Not Found
description:
type: string
example: The requested resource is not available.
apiErrorCode:
type: string
example: htm.api.err.40xxx
500Response:
type: object
properties:
code:
type: string
example: '500'
type:
type: string
message:
type: string
example: Internal Server Error
description:
type: string
apiErrorCode:
type: string
example: htm.api.err.40xxx

View File

@ -3,8 +3,8 @@ info:
title: ABT Service Engine Order APIs
version: "1.0"
description: Order APIs available in the Service Engine for order validation and fulfillment.
servers:
- url: https://services.acc.api.htm.nl/abt/touchpoint/2.0
servers:
- url: https://api.integratielaag.nl/abt/abtserviceengine/1.0
paths:
/orders/validation/gboAgeProfile:
get:

View File

@ -4,7 +4,7 @@ info:
version: "1.0"
description: CRUD APIs for ABT Orders database. These are NOT the functional APIs from Service Engine.
servers:
- url: https://services.acc.api.htm.nl/abt/abtorder/1.0
- url: https://api.integratielaag.nl/v1
paths:
/orders:
get:

View File

@ -3,8 +3,8 @@ info:
title: ABT Service Engine Order APIs
version: "1.0"
description: Order APIs available in the Service Engine for order validation and fulfillment.
servers:
- url: https://services.acc.api.htm.nl/abt/touchpoint/2.0
servers:
- url: https://api.integratielaag.nl/v2
paths:
/orders/validation:
post:

View File

@ -5,8 +5,8 @@ info:
Service Engine APIs for HTM products. These are NOT the CRUD APIs to access raw data in the database.
To be used by touchpoints to get information about HTM products they are allowed to see and/or sell.
version: "1.0"
servers:
- url: https://services.acc.api.htm.nl/abt/touchpoint/1.0
servers:
- url: https://api.integratielaag.nl/abt/abtserviceengine/1.0
tags:
- name: ServiceEngine Products
description: |-

View File

@ -5,8 +5,8 @@ info:
Service Engine APIs for HTM products. These are NOT the CRUD APIs to access raw data in the database.
To be used by touchpoints to get information about HTM products they are allowed to see and/or sell.
version: "1.0"
servers:
- url: https://services.acc.api.htm.nl/abt/touchpoint/1.0
servers:
- url: https://api.integratielaag.nl/abt/touchpoint/1.0
tags:
- name: ServiceEngine Products
description: |-

View File

@ -7,7 +7,7 @@ info:
Service Engine, using a different endpoint.
version: '1.0'
servers:
- url: https://services.acc.api.htm.nl/abt/productreference/1.0
- url: https://api.integratielaag.nl/abt/productreference/1.0
tags:
- name: ABTProductReference CRUD
description: >-

View File

@ -7,7 +7,7 @@ info:
Service Engine, using a different endpoint.
version: '1.0'
servers:
- url: https://services.acc.api.htm.nl/abt/abtproducts/1.0
- url: https://api.integratielaag.nl/abt/products/1.0
tags:
- name: ABTProducts CRUD
description: >-

View File

@ -4,7 +4,7 @@ info:
version: "1.0"
description: CRUD APIs for ABT Purchased Products database. These are NOT the functional APIs from Service Engine.
servers:
- url: https://services.acc.api.htm.nl/abt/abtproducts/1.0
- url: https://api.integratielaag.nl/v1
paths:
/purchasedproducts:
get:

View File

@ -4,7 +4,7 @@ info:
version: "1.0"
description: CRUD APIs for ABT Utility tables. These are NOT the functional APIs from Service Engine.
servers:
- url: https://services.acc.api.htm.nl/abt/abtutility/1.0
- url: https://api.integratielaag.nl/v1
paths:
/scheduledactions:
get: