AMCS Group Supplier API
The Supplier API from AMCS Group — 3 operation(s) for supplier.
The Supplier API from AMCS Group — 3 operation(s) for supplier.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/amcs-group:amcs-group-supplier-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: AMCS Platform REST Supplier API
description: '
# Overview
## Who Should Read this Document
This document contains a technical description of the AMCS Platform REST API. It is intended for:
· System integrators
· Customer IT team looking to integrate AMCS Platform with another system
· Third parties looking to integrate their system with AMCS Platform
## Document Scope
This document introduces the technical aspects of the AMCS Platform REST API. The purpose of this document is to provide readers with detail on how to:
· Access the REST API
· Make calls to the API to retrieve, append and update resources
· Retrieve the incremental changes to a collection
· Find more detail on the end points that are available from an environment. ## Summary
AMCS Platform REST API is designed to support the integration of AMCS Platform with other systems. With care and additional infrastructure, the REST API can be used to build functionality on top of Platform but that is not it’s primary purpose. The ‘changes since’ process provides the main means of performing an initial synchronisation of the AMCS Platform and another system, and then keeping them synchronised. Methods are also provided to create and update resources. # Integration Patterns and Tools
The AMCS Platform provides a number of tools that can be used to connect systems. Care should be taken to match the right tooling to the intended pattern of integration. · When an extract-based approach is needed, use BI reporting. · When derived values are require, use the data mart. · When business processes on different systems need to be integrated by synchronising the data on each through an event style interface, use the REST API. An integration using the REST API will need to take full responsibility for all aspects of the integration including:
· Pulling change events from AMCS Platform
· Filtering the changed resources for the ones that are of interest
· Pulling additional resources from the REST API in order the retrieve all the properties needed by the destination
· Mashing resources to create the complete view required
· Translating that into the form required by the destination
· Validating this to ensure it meet the entry rules of the destination
· Pushing the result to the destination
In the early stages of designing the interface care should be taken to ensure that the need for caching/staging has been considered. The changes since functionality is effectively a means of pulling create/change events from platform. The only filters available enable retrieval of related resources to build a view external to AMCS Platform
# Basics
The AMCS REST API provides a RESTful interface that allows access to the primary business resources of the AMCS platform. The interface follows general HATEOAS compliance principles. ## Quick start
A quickstart walkthrough based on node.js and covering authentication and getting a page of customers can be found here. ## Interface definitions
Swagger documentation for the end points available on an environment can be found at:
Before 8.5: https://{environment domain name}/swagger/ui/index
From 8.5: https://{environment domain name}/erp/api/swagger/ui/index
## HTTP Interface
The following HTTP RESTful methods are provided as part of this API:
· GET: Provides read access to retrieve details of one or more resources. · POST: Creates or updates a single resource or a set of resources. · PUT: Updates a single resource or a set of resources. Note:
· DELETE methods are currently not provided as part of the API. The REST API URIs begin with
https://{environment domain name}/erp/api/integrator/erp
For example:
https://prod.amcs-at-mycompany.com/erp/api/integrator/erp
This should be used as the base of the URI.'
version: latest
servers:
- url: https://ete-p5-tst-svc-core.amcsplatform.com/erp/api/integrator/erp
tags:
- name: Supplier
paths:
/directory/suppliers/changes:
get:
tags:
- Supplier
summary: Retrieve changes
description: '| Property | Description |
| -------------- | ------------------------------------------------------------ |
| GUID | The GUID associated to the supplier. |
| ApAccountCode | The account code used for accounts payable associated to the supplier. |
| BankDetails | The object where bank details are specified. |
| BankDetails.AccountName | The account name associated to the bank details. |
| BankDetails.AccountNo | The account number associated to the bank details. |
| BankDetails.Address.Address1 | The address1 associated to the bank details. |
| BankDetails.Address.Address2 | The address2 associated to the bank details. |
| BankDetails.Address.Address3 | The address3 associated to the bank details. |
| BankDetails.Address.Address4 | The address4 associated to the bank details. |
| BankDetails.Address.Address5 | The address5 associated to the bank details. |
| BankDetails.Address.Postcode | The postcode associated to the bank details. |
| BankDetails.BankName | The bank name associated to the bank details. |
| BankDetails.BIC | The Bank Identifier Code associated to the bank details. |
| BankDetails.IBAN | The International Bank Account Number associated to the bank details. |
| BankDetails.SortCode | The sort code associated to the bank details. |
| BankDetails.DirectDebitRunConfigListItem | The GUID and name of the direct debit run config associated to the bank details. |
| CompanyOutletListItem | The GUID and name of the company outlet associated to the supplier. |
| CurrencyListItem | The GUID and name of the currency associated to the supplier. |
| Description | The description associated to the supplier. |
| IsTransportSupplier | Is this a transport supplier? |
| PaymentTermListItem | The GUID and name of the payment term associated to the supplier. |
| PaymentTypeListItem | The GUID and name of the payment type associated to the supplier. |'
operationId: Supplier_GetChanges
parameters:
- name: since
in: query
schema:
type: string
- name: cursor
in: query
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResourceChanges_ApiIntegratorSupplierAccountResource'
/directory/suppliers/{guid}:
get:
tags:
- Supplier
summary: Find with GUID
description: '| Property | Description |
| -------------- | ------------------------------------------------------------ |
| GUID | The GUID associated to the supplier. |
| ApAccountCode | The account code used for accounts payable associated to the supplier. |
| BankDetails | The object where bank details are specified. |
| BankDetails.AccountName | The account name associated to the bank details. |
| BankDetails.AccountNo | The account number associated to the bank details. |
| BankDetails.Address.Address1 | The address1 associated to the bank details. |
| BankDetails.Address.Address2 | The address2 associated to the bank details. |
| BankDetails.Address.Address3 | The address3 associated to the bank details. |
| BankDetails.Address.Address4 | The address4 associated to the bank details. |
| BankDetails.Address.Address5 | The address5 associated to the bank details. |
| BankDetails.Address.Postcode | The postcode associated to the bank details. |
| BankDetails.BankName | The bank name associated to the bank details. |
| BankDetails.BIC | The Bank Identifier Code associated to the bank details. |
| BankDetails.IBAN | The International Bank Account Number associated to the bank details. |
| BankDetails.SortCode | The sort code associated to the bank details. |
| BankDetails.DirectDebitRunConfigListItem | The GUID and name of the direct debit run config associated to the bank details. |
| CompanyOutletListItem | The GUID and name of the company outlet associated to the supplier. |
| CurrencyListItem | The GUID and name of the currency associated to the supplier. |
| Description | The description associated to the supplier. |
| IsTransportSupplier | Is this a transport supplier? |
| PaymentTermListItem | The GUID and name of the payment term associated to the supplier. |
| PaymentTypeListItem | The GUID and name of the payment type associated to the supplier. |'
operationId: Supplier_Get
parameters:
- name: guid
in: path
required: true
schema:
type: string
format: uuid
- name: udf
in: query
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResourceResultEntity_ApiIntegratorSupplierAccountResource'
put:
tags:
- Supplier
summary: Partial update
description: '| Property | Description | Required |
| -------------- | ------------------------------------------------------------ | -------- |
| GUID | The GUID associated to the supplier. | No |
| ApAccountCode | The account code used for accounts payable associated to the supplier. | Yes |
| BankDetails | The object where bank details are specified. | No |
| BankDetails.AccountName | The account name associated to the bank details. | Yes |
| BankDetails.AccountNo | The account number associated to the bank details. | Yes |
| BankDetails.Address.Address1 | The address1 associated to the bank details. | No |
| BankDetails.Address.Address2 | The address2 associated to the bank details. | No |
| BankDetails.Address.Address3 | The address3 associated to the bank details. | No |
| BankDetails.Address.Address4 | The address4 associated to the bank details. | No |
| BankDetails.Address.Address5 | The address5 associated to the bank details. | No |
| BankDetails.Address.Postcode | The postcode associated to the bank details. | No |
| BankDetails.BankName | The bank name associated to the bank details. | Yes |
| BankDetails.BIC | The Bank Identifier Code associated to the bank details. | No |
| BankDetails.IBAN | The International Bank Account Number associated to the bank details. | No |
| BankDetails.SortCode | The sort code associated to the bank details. | No |
| BankDetails.DirectDebitRunConfigListItem | The GUID and name of the direct debit run config associated to the bank details. | Yes |
| CompanyOutletListItem | The GUID and name of the company outlet associated to the supplier. | No |
| CurrencyListItem | The GUID and name of the currency associated to the supplier. | Yes |
| Description | The description associated to the supplier. | Yes |
| IsTransportSupplier | Is this a transport supplier? | No |
| PaymentTermListItem | The GUID and name of the payment term associated to the supplier. | No |
| PaymentTypeListItem | The GUID and name of the payment type associated to the supplier. | No |
**Extra validations**
| Condition | Error message |
| --------- | ------------- |
| CompanyOutlet not found with value CompanyOutletListItem.Guid | Failed to retrieve CompanyOutlet with GUID of {value of CompanyOutletListItem.Guid} |
| PaymentType not found with value PaymentTypeListItem.Guid | Failed to retrieve PaymentType with GUID of {value of PaymentTypeListItem.Guid} |
| PaymentTerm not found with value PaymentTermListItem.Guid | Failed to retrieve PaymentTerm with GUID of {value of PaymentTermListItem.Guid} |
| Currency not found with value CurrencyListItem.Guid | Failed to retrieve Currency with GUID of {value of CurrencyListItem.Guid} |
| DirectDebitRunConfig not found with value BankDetails.DirectDebitRunConfigListItem.Guid | Failed to retrieve DirectDebitRunConfig with GUID of {value of BankDetails.DirectDebitRunConfigListItem.Guid} |
| When APAccountCode is not unique | The ApAccountCode must be unique per supplier |
| Description not unique per supplier | The description must be unique per supplier |
| When Description is null/empty/more than 60 chars | Supplier/Haulier Description: Must have a value. Must be no more than 100 characters long |
| When APAccountCode is null/empty/more than 20 chars | APAccountCode: Must have a value. Must be no more than 20 characters long |'
operationId: SupplierAccount_Update
parameters:
- name: guid
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ApiIntegratorSupplierAccountResource'
required: true
x-bodyName: null
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResourceId'
/directory/suppliers:
get:
tags:
- Supplier
summary: Find with Filters
description: '| Property | Description |
| -------------- | ------------------------------------------------------------ |
| GUID | The GUID associated to the supplier. |
| ApAccountCode | The account code used for accounts payable associated to the supplier. |
| BankDetails | The object where bank details are specified. |
| BankDetails.AccountName | The account name associated to the bank details. |
| BankDetails.AccountNo | The account number associated to the bank details. |
| BankDetails.Address.Address1 | The address1 associated to the bank details. |
| BankDetails.Address.Address2 | The address2 associated to the bank details. |
| BankDetails.Address.Address3 | The address3 associated to the bank details. |
| BankDetails.Address.Address4 | The address4 associated to the bank details. |
| BankDetails.Address.Address5 | The address5 associated to the bank details. |
| BankDetails.Address.Postcode | The postcode associated to the bank details. |
| BankDetails.BankName | The bank name associated to the bank details. |
| BankDetails.BIC | The Bank Identifier Code associated to the bank details. |
| BankDetails.IBAN | The International Bank Account Number associated to the bank details. |
| BankDetails.SortCode | The sort code associated to the bank details. |
| BankDetails.DirectDebitRunConfigListItem | The GUID and name of the direct debit run config associated to the bank details. |
| CompanyOutletListItem | The GUID and name of the company outlet associated to the supplier. |
| CurrencyListItem | The GUID and name of the currency associated to the supplier. |
| Description | The description associated to the supplier. |
| IsTransportSupplier | Is this a transport supplier? |
| PaymentTermListItem | The GUID and name of the payment term associated to the supplier. |
| PaymentTypeListItem | The GUID and name of the payment type associated to the supplier. |'
operationId: Supplier_GetCollection
parameters:
- name: filter
in: query
schema:
type: string
- name: max
in: query
schema:
type: integer
format: int32
- name: page
in: query
schema:
type: integer
format: int32
- name: includeCount
in: query
schema:
type: boolean
- name: udf
in: query
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResourceResultCollection_ApiIntegratorSupplierAccountResource'
post:
tags:
- Supplier
summary: Create or update
description: '| Property | Description | Required |
| -------------- | ------------------------------------------------------------ | -------- |
| GUID | The GUID associated to the supplier. | No |
| ApAccountCode | The account code used for accounts payable associated to the supplier. | Yes |
| BankDetails | The object where bank details are specified. | No |
| BankDetails.AccountName | The account name associated to the bank details. | Yes |
| BankDetails.AccountNo | The account number associated to the bank details. | Yes |
| BankDetails.Address.Address1 | The address1 associated to the bank details. | No |
| BankDetails.Address.Address2 | The address2 associated to the bank details. | No |
| BankDetails.Address.Address3 | The address3 associated to the bank details. | No |
| BankDetails.Address.Address4 | The address4 associated to the bank details. | No |
| BankDetails.Address.Address5 | The address5 associated to the bank details. | No |
| BankDetails.Address.Postcode | The postcode associated to the bank details. | No |
| BankDetails.BankName | The bank name associated to the bank details. | Yes |
| BankDetails.BIC | The Bank Identifier Code associated to the bank details. | No |
| BankDetails.IBAN | The International Bank Account Number associated to the bank details. | No |
| BankDetails.SortCode | The sort code associated to the bank details. | No |
| BankDetails.DirectDebitRunConfigListItem | The GUID and name of the direct debit run config associated to the bank details. | Yes |
| CompanyOutletListItem | The GUID and name of the company outlet associated to the supplier. | No |
| CurrencyListItem | The GUID and name of the currency associated to the supplier. | Yes |
| Description | The description associated to the supplier. | Yes |
| IsTransportSupplier | Is this a transport supplier? | No |
| PaymentTermListItem | The GUID and name of the payment term associated to the supplier. | No |
| PaymentTypeListItem | The GUID and name of the payment type associated to the supplier. | No |
**Extra validations**
| Condition | Error message |
| --------- | ------------- |
| CompanyOutlet not found with value CompanyOutletListItem.Guid | Failed to retrieve CompanyOutlet with GUID of {value of CompanyOutletListItem.Guid} |
| PaymentType not found with value PaymentTypeListItem.Guid | Failed to retrieve PaymentType with GUID of {value of PaymentTypeListItem.Guid} |
| PaymentTerm not found with value PaymentTermListItem.Guid | Failed to retrieve PaymentTerm with GUID of {value of PaymentTermListItem.Guid} |
| Currency not found with value CurrencyListItem.Guid | Failed to retrieve Currency with GUID of {value of CurrencyListItem.Guid} |
| DirectDebitRunConfig not found with value BankDetails.DirectDebitRunConfigListItem.Guid | Failed to retrieve DirectDebitRunConfig with GUID of {value of BankDetails.DirectDebitRunConfigListItem.Guid} |
| When APAccountCode is not unique | The ApAccountCode must be unique per supplier |
| When Description is null/empty/more than 60 chars | Supplier/Haulier Description: Must have a value. Must be no more than 100 characters long |
| When APAccountCode is null/empty/more than 20 chars | APAccountCode: Must have a value. Must be no more than 20 characters long |'
operationId: SupplierAccount_Create
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ApiIntegratorSupplierAccountResource'
required: true
x-bodyName: null
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResourceId'
components:
schemas:
ApiResourceResultEntityLinks:
type: object
properties:
self:
type: string
associations:
type: array
items:
type: string
expand:
type: array
items:
type: string
operations:
type: array
items:
type: string
ApiIntegratorSupplierAccountBankDetailsAddressResource:
type: object
properties:
Address1:
type: string
Address2:
type: string
Address3:
type: string
Address4:
type: string
Address5:
type: string
Postcode:
type: string
ApiResourceResultEntityExtra:
type: object
properties:
expand:
type: object
additionalProperties:
type: object
additionalProperties:
type: object
include:
type: object
additionalProperties:
type: array
items:
type: object
additionalProperties:
type: object
ApiResourceResultCollectionExtra:
type: object
properties:
count:
type: integer
format: int32
ApiIntegratorSupplierAccountResource:
type: object
properties:
CompanyOutletListItem:
$ref: '#/components/schemas/ApiIntegratorListItemResource'
ApAccountCode:
type: string
Description:
type: string
IsTransportSupplier:
type: boolean
PaymentTypeListItem:
$ref: '#/components/schemas/ApiIntegratorListItemResource'
PaymentTermListItem:
$ref: '#/components/schemas/ApiIntegratorListItemResource'
CurrencyListItem:
$ref: '#/components/schemas/ApiIntegratorListItemResource'
BankDetails:
$ref: '#/components/schemas/ApiIntegratorSupplierAccountBankDetailsResource'
GUID:
type: string
format: uuid
example: 00000000-0000-0000-0000-000000000000
ApiResourceResultCollection_ApiIntegratorSupplierAccountResource:
type: object
properties:
resource:
type: array
items:
$ref: '#/components/schemas/ApiIntegratorSupplierAccountResource'
extra:
$ref: '#/components/schemas/ApiResourceResultCollectionExtra'
errors:
$ref: '#/components/schemas/ApiResourceErrors'
status:
$ref: '#/components/schemas/ApiResourceStatus'
ApiResourceResultUpdatesExtra:
type: object
properties:
until:
type: string
cursor:
type: string
ApiResourceId:
type: object
properties:
resource:
type: string
format: uuid
errors:
$ref: '#/components/schemas/ApiResourceErrors'
status:
$ref: '#/components/schemas/ApiResourceStatus'
ApiIntegratorListItemResource:
type: object
properties:
Description:
type: string
Guid:
type: string
format: uuid
example: 00000000-0000-0000-0000-000000000000
ApiResourceResultEntity_ApiIntegratorSupplierAccountResource:
type: object
properties:
resource:
$ref: '#/components/schemas/ApiIntegratorSupplierAccountResource'
links:
$ref: '#/components/schemas/ApiResourceResultEntityLinks'
extra:
$ref: '#/components/schemas/ApiResourceResultEntityExtra'
errors:
$ref: '#/components/schemas/ApiResourceErrors'
status:
$ref: '#/components/schemas/ApiResourceStatus'
ApiResourceStatus:
type: object
properties:
id:
type: integer
format: int32
isSuccess:
type: boolean
ApiResourceErrors:
type: object
properties:
errors:
type: string
ApiIntegratorSupplierAccountBankDetailsResource:
type: object
properties:
BankName:
type: string
AccountName:
type: string
AccountNo:
type: string
SortCode:
type: string
BIC:
type: string
IBAN:
type: string
Address:
$ref: '#/components/schemas/ApiIntegratorSupplierAccountBankDetailsAddressResource'
DirectDebitRunConfigListItem:
$ref: '#/components/schemas/ApiIntegratorListItemResource'
ApiResourceChanges_ApiIntegratorSupplierAccountResource:
type: object
properties:
resource:
type: array
items:
$ref: '#/components/schemas/ApiIntegratorSupplierAccountResource'
extra:
$ref: '#/components/schemas/ApiResourceResultUpdatesExtra'
errors:
$ref: '#/components/schemas/ApiResourceErrors'
status:
$ref: '#/components/schemas/ApiResourceStatus'