AMCS Group Contract API

The Contract API from AMCS Group — 2 operation(s) for contract.

Specifications

OpenAPI Specification

amcs-group-contract-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Core AccessGroup Contract API
  version: core
tags:
- name: Contract
paths:
  /accounting/contracts/{guid}:
    get:
      tags:
      - Contract
      summary: Find with GUID
      description: "| Property                  | Description                                                  |\r\n| ------------------------- | ------------------------------------------------------------ |\r\n| GUID                      | The GUID associated to the contract.                         |\r\n| StartDate                 | The start date of the contract in ISO format (YYYY-MM-DD). |\r\n| CreditLimit               | The maximum credit limit stipulated on this contract.        |\r\n| BalanceMigrated           | The balance which has been migrated from another system - RM to confirm. |\r\n| InvoiceCycleListItem      | The GUID and description of the invoice cycle this contract will be invoiced under (there may be cycles done monthly, daily, weekly, etc.) |\r\n| VATExemptNumber           | If the contract is exempt from VAT, this is the associated confirmation number. |\r\n| VATExemptionExpiryDate    | If the contract is exempt from VAT this is date this status is no longer valid in ISO format (YYYY-MM-DD). |\r\n| VATRegistrationNumber     | If the contract is registered with VAT, this is the relevant number. |\r\n| DepartmentListItem            | The GUID and name of the department this contract is associated to. |\r\n| ContractStatusListItem        | The GUID and status of the contract (eg. Approved, Pending, Un-Approved). |\r\n| PaymentTermListItem           | The GUID and description of the payment terms invoices under the contract are to the paid to (eg. Immediately, 30 Days Net, etc.). |\r\n| PaymentTypeListItem           | The GUID and description of how payments for invoices under the contract will be paid (eg. Cash, Credit Card, etc.). |\r\n| InvoiceFrequencyTermListItem  | The GUID and description of the invoice frequency this contract will be invoiced under (frequency can be monthly, daily, weekly, etc.) |\r\n"
      operationId: Contract_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[ApiIntegratorContractResource]'
    put:
      tags:
      - Contract
      summary: Partial update
      description: "| Property                  | Description                                                  | Required |\r\n| ------------------------- | ------------------------------------------------------------ | -------- |\r\n| GUID                      | The GUID associated to the contract.                         | No |\r\n| StartDate                 | The start date of the contract in ISO format (YYYY-MM-DD). | No |\r\n| CreditLimit               | The maximum credit limit stipulated on this contract.        | Yes |\r\n| BalanceMigrated           | The balance which has been migrated from another system - RM to confirm. | No |\r\n| InvoiceCycleListItem      | The GUID and description of the invoice cycle this contract will be invoiced under (there may be cycles done monthly, daily, weekly, etc.) | Yes |\r\n| VATExemptNumber           | If the contract is exempt from VAT, this is the associated confirmation number. | No |\r\n| VATExemptionExpiryDate    | If the contract is exempt from VAT this is date this status is no longer valid in ISO format (YYYY-MM-DD). | No |\r\n| VATRegistrationNumber     | If the contract is registered with VAT, this is the relevant number. | No |\r\n| DepartmentListItem            | The GUID and name of the department this contract is associated to. | No |\r\n| ContractStatusListItem        | The GUID and status of the contract (eg. Approved, Pending, Un-Approved). | No |\r\n| PaymentTermListItem           | The GUID and description of the payment terms invoices under the contract are to the paid to (eg. Immediately, 30 Days Net, etc.). | Yes |\r\n| PaymentTypeListItem           | The GUID and description of how payments for invoices under the contract will be paid (eg. Cash, Credit Card, etc.). | Yes |\r\n| InvoiceFrequencyTermListItem  | The GUID and description of the invoice frequency this contract will be invoiced under (frequency can be monthly, daily, weekly, etc.) | Yes |\r\n\r\n**Extra validations**\r\n\r\n| Condition | Error message |\r\n| --------- | ------------- |\r\n| None | |"
      operationId: Contract_Update
      parameters:
      - name: guid
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiIntegratorContractResource'
        required: true
        x-bodyName: null
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResourceId'
  /accounting/contracts:
    get:
      tags:
      - Contract
      summary: Find with Filters
      description: "| Property                  | Description                                                  |\r\n| ------------------------- | ------------------------------------------------------------ |\r\n| GUID                      | The GUID associated to the contract.                         |\r\n| StartDate                 | The start date of the contract in ISO format (YYYY-MM-DD). |\r\n| CreditLimit               | The maximum credit limit stipulated on this contract.        |\r\n| BalanceMigrated           | The balance which has been migrated from another system - RM to confirm. |\r\n| InvoiceCycleListItem      | The GUID and description of the invoice cycle this contract will be invoiced under (there may be cycles done monthly, daily, weekly, etc.) |\r\n| VATExemptNumber           | If the contract is exempt from VAT, this is the associated confirmation number. |\r\n| VATExemptionExpiryDate    | If the contract is exempt from VAT this is date this status is no longer valid in ISO format (YYYY-MM-DD). |\r\n| VATRegistrationNumber     | If the contract is registered with VAT, this is the relevant number. |\r\n| DepartmentListItem            | The GUID and name of the department this contract is associated to. |\r\n| ContractStatusListItem        | The GUID and status of the contract (eg. Approved, Pending, Un-Approved). |\r\n| PaymentTermListItem           | The GUID and description of the payment terms invoices under the contract are to the paid to (eg. Immediately, 30 Days Net, etc.). |\r\n| PaymentTypeListItem           | The GUID and description of how payments for invoices under the contract will be paid (eg. Cash, Credit Card, etc.). |\r\n| InvoiceFrequencyTermListItem  | The GUID and description of the invoice frequency this contract will be invoiced under (frequency can be monthly, daily, weekly, etc.) |\r\n"
      operationId: Contract_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[ApiIntegratorContractResource]'
    post:
      tags:
      - Contract
      summary: Create or update
      description: "| Property                  | Description                                                  | Required |\r\n| ------------------------- | ------------------------------------------------------------ | -------- |\r\n| GUID                      | The GUID associated to the contract.                         | No |\r\n| StartDate                 | The start date of the contract in ISO format (YYYY-MM-DD). | No |\r\n| CreditLimit               | The maximum credit limit stipulated on this contract.        | Yes |\r\n| BalanceMigrated           | The balance which has been migrated from another system - RM to confirm. | No |\r\n| InvoiceCycleListItem      | The GUID and description of the invoice cycle this contract will be invoiced under (there may be cycles done monthly, daily, weekly, etc.) | Yes |\r\n| VATExemptNumber           | If the contract is exempt from VAT, this is the associated confirmation number. | No |\r\n| VATExemptionExpiryDate    | If the contract is exempt from VAT this is date this status is no longer valid in ISO format (YYYY-MM-DD). | No |\r\n| VATRegistrationNumber     | If the contract is registered with VAT, this is the relevant number. | No |\r\n| DepartmentListItem            | The GUID and name of the department this contract is associated to. | No |\r\n| ContractStatusListItem        | The GUID and status of the contract (eg. Approved, Pending, Un-Approved). | No |\r\n| PaymentTermListItem           | The GUID and description of the payment terms invoices under the contract are to the paid to (eg. Immediately, 30 Days Net, etc.). | Yes |\r\n| PaymentTypeListItem           | The GUID and description of how payments for invoices under the contract will be paid (eg. Cash, Credit Card, etc.). | Yes |\r\n| InvoiceFrequencyTermListItem  | The GUID and description of the invoice frequency this contract will be invoiced under (frequency can be monthly, daily, weekly, etc.) | Yes |\r\n\r\n**Extra validations**\r\n\r\n| Condition | Error message |\r\n| --------- | ------------- |\r\n| None | |"
      operationId: Contract_Create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiIntegratorContractResource'
        required: true
        x-bodyName: null
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResourceId'
components:
  schemas:
    ApiIntegratorListItemResource:
      type: object
      properties:
        Description:
          type: string
        Guid:
          type: string
          format: uuid
          example: 00000000-0000-0000-0000-000000000000
    ApiResourceId:
      type: object
      properties:
        resource:
          type: string
          format: uuid
        errors:
          $ref: '#/components/schemas/ApiResourceErrors'
        status:
          $ref: '#/components/schemas/ApiResourceStatus'
    ApiIntegratorContractResource:
      type: object
      properties:
        StartDate:
          type: string
          format: localDate
          example: '2000-01-01'
        CreditLimit:
          type: number
          format: double
        BalanceMigrated:
          type: number
          format: double
        VATExemptNumber:
          type: string
        VATExemptionExpiryDate:
          type: string
          format: localDate
          example: '2000-01-01'
        VATRegistrationNumber:
          type: string
        InvoiceCycleListItem:
          $ref: '#/components/schemas/ApiIntegratorListItemResource'
        DepartmentListItem:
          $ref: '#/components/schemas/ApiIntegratorListItemResource'
        ContractStatusListItem:
          $ref: '#/components/schemas/ApiIntegratorListItemResource'
        PaymentTypeListItem:
          $ref: '#/components/schemas/ApiIntegratorListItemResource'
        PaymentTermListItem:
          $ref: '#/components/schemas/ApiIntegratorListItemResource'
        InvoiceFrequencyTermListItem:
          $ref: '#/components/schemas/ApiIntegratorListItemResource'
        RebateInvoiceFrequencyTermListItem:
          $ref: '#/components/schemas/ApiIntegratorListItemResource'
        GUID:
          type: string
          format: uuid
          example: 00000000-0000-0000-0000-000000000000
    ApiResourceErrors:
      type: object
      properties:
        errors:
          type: string
    ApiResourceResultEntity[ApiIntegratorContractResource]:
      type: object
      properties:
        resource:
          $ref: '#/components/schemas/ApiIntegratorContractResource'
        links:
          $ref: '#/components/schemas/ApiResourceResultEntityLinks'
        extra:
          $ref: '#/components/schemas/ApiResourceResultEntityExtra'
        errors:
          $ref: '#/components/schemas/ApiResourceErrors'
        status:
          $ref: '#/components/schemas/ApiResourceStatus'
    ApiResourceResultCollection[ApiIntegratorContractResource]:
      type: object
      properties:
        resource:
          type: array
          items:
            $ref: '#/components/schemas/ApiIntegratorContractResource'
        extra:
          $ref: '#/components/schemas/ApiResourceResultCollectionExtra'
        errors:
          $ref: '#/components/schemas/ApiResourceErrors'
        status:
          $ref: '#/components/schemas/ApiResourceStatus'
    ApiResourceResultCollectionExtra:
      type: object
      properties:
        count:
          type: integer
          format: int32
    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
    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
    ApiResourceStatus:
      type: object
      properties:
        id:
          type: integer
          format: int32
        isSuccess:
          type: boolean