Vic.ai Synchronizing API

Synchronization is explicit and it is up to the integration to call each resource in the order deemed appropriate. When calling any synchronization functions. Care must be taken by the integration to not get itself into ping-pong call loop. For instance, if an api call synchronizes a resource, then the webhook handler __should not__ call a different resource synchronize function.

Operations 6

POST /v0/accounts/synchronize Synchronize Accounts #
POST /v0/dimensions/synchronize Synchronize Dimensions #
POST /v0/vendors/synchronize Synchronize Vendors #
POST /v0/vatCodes/synchronize Synchronize Vat Codes #
POST /v0/purchaseOrders/synchronize Synchronize Purchase Orders #
POST /v0/paymentTerms/synchronize Synchronize Payment Terms #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vicai-synchronizing-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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 Specification

vicai-synchronizing-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: v10.40.4
  contact: {}
  title: Vic.ai Synchronizing API
  description: '## Introduction


    The Vic.ai API provides a seamless connection between your Enterprise Resource

    Planning (ERP) system and the Vic.ai product suite.'
servers:
- url: https://api.no.stage.vic.ai
  description: staging server, NO
- url: https://api.us.vic.ai
  description: production server, US
- url: https://api.no.vic.ai
  description: production server, NO
security:
- BearerAuth: []
tags:
- name: Synchronizing
  description: 'Synchronization is explicit and it is up to the integration to call each

    resource in the order deemed appropriate.


    When calling any synchronization functions. Care must be taken by the

    integration to not get itself into ping-pong call loop. For instance, if an api

    call synchronizes a resource, then the webhook handler __should not__ call a

    different resource synchronize function.'
paths:
  /v0/accounts/synchronize:
    post:
      description: 'Tells the ERP to synchronize the Account resource. If the ERP is

        using the API, the call will be sent via the normal webhook methods. If

        the ERP is not using this API then this will call the native

        integration''s synchronize functionality.'
      summary: Synchronize Accounts
      operationId: synchronizeAccounts
      tags:
      - Synchronizing
      responses:
        '204':
          $ref: '#/components/responses/SynchronizeAccountsResponse'
        '429':
          $ref: '#/components/responses/TooManyRequestsResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
  /v0/dimensions/synchronize:
    post:
      description: 'Tells the ERP to synchronize the Dimension resource. If the ERP is

        using the API, the call will be sent via the normal webhook methods. If

        the ERP is not using this API then this will call the native

        integration''s synchronize functionality.'
      summary: Synchronize Dimensions
      operationId: synchronizeDimensions
      tags:
      - Synchronizing
      responses:
        '204':
          $ref: '#/components/responses/SynchronizeDimensionsResponse'
        '429':
          $ref: '#/components/responses/TooManyRequestsResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
  /v0/vendors/synchronize:
    post:
      description: 'Tells the ERP to synchronize the Vendor resource. If the ERP is using

        the API, the call will be sent via the normal webhook methods. If the

        ERP is not using this API then this will call the native integration''s

        synchronize functionality.'
      summary: Synchronize Vendors
      operationId: synchronizeVendors
      tags:
      - Synchronizing
      responses:
        '204':
          $ref: '#/components/responses/SynchronizeVendorsResponse'
        '429':
          $ref: '#/components/responses/TooManyRequestsResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
  /v0/vatCodes/synchronize:
    post:
      description: 'Tells the ERP to synchronize the Vat Code resource. If the ERP is using

        the API, the call will be sent via the normal webhook methods. If the

        ERP is not using this API then this will call the native integration''s

        synchronize functionality.'
      summary: Synchronize Vat Codes
      operationId: synchronizeVatCodes
      tags:
      - Synchronizing
      responses:
        '204':
          $ref: '#/components/responses/SynchronizeVatCodesResponse'
        '429':
          $ref: '#/components/responses/TooManyRequestsResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
  /v0/purchaseOrders/synchronize:
    post:
      description: 'Tells the ERP to synchronize the Purchase Orders resource. If the ERP is

        using the API, the call will be sent via the normal webhook methods. If

        the ERP is not using this API then this will call the native

        integration''s synchronize functionality.'
      summary: Synchronize Purchase Orders
      operationId: synchronizePurchaseOrders
      tags:
      - Synchronizing
      responses:
        '204':
          $ref: '#/components/responses/SynchronizePurchaseOrdersResponse'
        '429':
          $ref: '#/components/responses/TooManyRequestsResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
  /v0/paymentTerms/synchronize:
    post:
      description: 'Tells the ERP to synchronize the Payment Terms resource. If the ERP is

        using the API, the call will be sent via the normal webhook methods. If

        the ERP is not using this API then this will call the native

        integration''s synchronize functionality.'
      summary: Synchronize Payment Terms
      operationId: synchronizePaymentTerms
      tags:
      - Synchronizing
      responses:
        '204':
          $ref: '#/components/responses/SynchronizePaymentTermsResponse'
        '429':
          $ref: '#/components/responses/TooManyRequestsResponse'
        4XX:
          $ref: '#/components/responses/ErrorResponse'
components:
  schemas:
    ErrorString:
      type: string
      maxLength: 255
    Error:
      description: 'generic error message in JSON format.  Note the ''code'' field should

        match the HTTP status code of the wrapping HTTP request.

        '
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: integer
          minimum: 100
          maximum: 599
        message:
          $ref: '#/components/schemas/ErrorString'
  responses:
    SynchronizePurchaseOrdersResponse:
      description: 'A request to synchronize the purchase orders was acknowledged and is in

        the process of being ran.

        '
    SynchronizeDimensionsResponse:
      description: 'A request to synchronize the Dimensions was acknowledged and is in the

        process of being ran.

        '
    ErrorResponse:
      description: An unexpected error has occurred. Check the body for more details.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    SynchronizeVendorsResponse:
      description: 'A request to synchronize the vendors was acknowledged and is in the

        process of being ran.

        '
    SynchronizePaymentTermsResponse:
      description: 'A request to synchronize the payment terms was acknowledged and is in

        the process of being ran.

        '
    SynchronizeVatCodesResponse:
      description: 'A request to synchronize the vat codes was acknowledged and is in the

        process of being ran.

        '
    TooManyRequestsResponse:
      description: HTTP call rate limit exceeded.
      headers:
        Retry-After:
          description: Number of seconds to wait before retrying the request. Waiting this long guarantees the rate-limit window has reset.
          schema:
            type: integer
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    SynchronizeAccountsResponse:
      description: 'A request to synchronize the GL Accounts was acknowledged and is in the

        process of being ran.

        '
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
x-tagGroups:
- name: Integration
  tags:
  - Authentication
  - Pagination
  - Webhooks
  - Webhook Subscriptions
  - Webhook Events
  - Synchronizing
  - Status
- name: Master Data
  tags:
  - Accounts
  - Dimensions
  - Vendors
  - Vendor Groups
  - Vendor Tags
  - Tags
  - Tax Codes
  - VAT Codes
  - Payment Terms
- name: Organization & Access
  tags:
  - Partners
  - Organizations
  - Companies
  - Users
- name: Invoices & Bills
  tags:
  - Invoices
  - Bills
  - Attachments
  - Invoice Approval Flows
  - Invoice Posting Guide
  - Training Invoices
- name: Purchase Orders
  tags:
  - Purchase Orders
  - Purchase Order Line Items
  - Purchase Order Matching Guide
- name: Payments
  tags:
  - Payment Batches
  - Payment Confirmations
  - Credit Confirmations
- name: Reporting
  tags:
  - CSV Reports
- name: Reference
  tags:
  - Changelog