FlowAccount Contact API

The Contact API from FlowAccount — 4 operation(s) for contact.

Operations 7

GET /api/{culture}/contacts #
POST /api/{culture}/contacts #
GET /api/{culture}/contacts/{id} #
PUT /api/{culture}/contacts/{id} #
DELETE /api/{culture}/contacts/{id} #
POST /api/{culture}/contacts/{contactId}/update-contact-qrcode #

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/flowaccount-contact-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 email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

flowaccount-contact-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: FlowAccount Open BatchImport Contact API
  version: 1.0.0
servers:
- url: https://openapi.flowaccount.com/sandbox
  description: The sandbox server
- url: https://openapi.flowaccount.com/v3-alpha
  description: The prod server
security:
- bearer: []
tags:
- name: Contact
paths:
  /api/{culture}/contacts/search:
    get:
      tags:
      - Contact
      operationId: Contact_Search
      parameters:
      - name: culture
        in: path
        required: true
        schema:
          type: string
        x-position: 1
      responses:
        '200':
          description: ''
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
      security:
      - bearer: []
  /api/{culture}/contacts:
    get:
      tags:
      - Contact
      operationId: Contact_GetContactList
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type:
          - integer
          - 'null'
          format: int64
        x-position: 1
      - name: culture
        in: path
        required: true
        schema:
          type: string
        x-position: 2
      responses:
        '200':
          description: ''
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
      security:
      - bearer: []
    post:
      tags:
      - Contact
      operationId: Contact_Create
      parameters:
      - name: culture
        in: path
        required: true
        schema:
          type: string
        x-position: 2
      requestBody:
        x-name: requestModel
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContactResult'
        required: true
        x-position: 1
      responses:
        '200':
          description: ''
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
      security:
      - bearer: []
  /api/{culture}/contacts/{id}:
    get:
      tags:
      - Contact
      operationId: Contact_GetContactList2
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type:
          - integer
          - 'null'
          format: int64
        x-position: 1
      - name: culture
        in: path
        required: true
        schema:
          type: string
        x-position: 2
      responses:
        '200':
          description: ''
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
      security:
      - bearer: []
    put:
      tags:
      - Contact
      operationId: Contact_Update
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
          format: int64
        x-position: 2
      - name: culture
        in: path
        required: true
        schema:
          type: string
        x-position: 3
      requestBody:
        x-name: requestModel
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContactResult'
        required: true
        x-position: 1
      responses:
        '200':
          description: ''
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
      security:
      - bearer: []
    delete:
      tags:
      - Contact
      operationId: Contact_RemoveContact
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
          format: int64
        x-position: 1
      - name: culture
        in: path
        required: true
        schema:
          type: string
        x-position: 2
      responses:
        '200':
          description: ''
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
      security:
      - bearer: []
  /api/{culture}/contacts/{contactId}/update-contact-qrcode:
    post:
      tags:
      - Contact
      operationId: Contact_UploadContactQRCode
      parameters:
      - name: contactId
        in: path
        required: true
        schema:
          type: integer
          format: int64
        x-position: 1
      - name: culture
        in: path
        required: true
        schema:
          type: string
        x-position: 2
      responses:
        '200':
          description: ''
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
      security:
      - bearer: []
components:
  schemas:
    IBookOfAccount:
      type: object
      x-abstract: true
      additionalProperties: false
      properties:
        journalEntryId:
          type: integer
          format: int64
        companyId:
          type: integer
          format: int64
        debitCredit:
          $ref: '#/components/schemas/FinancialTransactionType'
        bookOfAccountStatus:
          $ref: '#/components/schemas/BookOfAccountStatus'
        chartOfAccountId:
          type: integer
          format: int64
        postedDate:
          type:
          - string
          - 'null'
          format: date-time
        createdOn:
          type: string
          format: date-time
        modifiedOn:
          type: string
          format: date-time
        approvedOn:
          type:
          - string
          - 'null'
          format: date-time
        value:
          type: number
          format: decimal
        balance:
          type: number
          format: decimal
        excludeVoidBalance:
          type: number
          format: decimal
        rowNumber:
          type: integer
          format: int32
        description:
          type:
          - string
          - 'null'
        descriptionForeign:
          type:
          - string
          - 'null'
        chartOfAccountName:
          type:
          - string
          - 'null'
        journalEntry:
          oneOf:
          - $ref: '#/components/schemas/IJournalEntryBase'
        chartOfAccount:
          oneOf:
          - $ref: '#/components/schemas/IChartOfAccount'
    DocumentTemplates:
      type: integer
      description: '1 = Default

        3 = Template1

        5 = Template2

        7 = Template3

        9 = Template4

        11 = Template5

        13 = TemplateA5

        15 = Template9x11withOriginal

        17 = Template8

        101 = NativeDefault

        103 = Native1

        105 = Native3

        107 = Native5

        109 = Native7

        111 = Native9

        113 = Native11

        115 = Native13

        201 = Thermal1

        203 = Thermal2

        205 = SocialSlip

        301 = ShortCA1

        303 = ShortCA2

        305 = ShortCA3'
      x-enumNames:
      - Default
      - Template1
      - Template2
      - Template3
      - Template4
      - Template5
      - TemplateA5
      - Template9x11withOriginal
      - Template8
      - NativeDefault
      - Native1
      - Native3
      - Native5
      - Native7
      - Native9
      - Native11
      - Native13
      - Thermal1
      - Thermal2
      - SocialSlip
      - ShortCA1
      - ShortCA2
      - ShortCA3
      enum:
      - 1
      - 3
      - 5
      - 7
      - 9
      - 11
      - 13
      - 15
      - 17
      - 101
      - 103
      - 105
      - 107
      - 109
      - 111
      - 113
      - 115
      - 201
      - 203
      - 205
      - 301
      - 303
      - 305
    ReceivableInvoice:
      allOf:
      - $ref: '#/components/schemas/Document2'
      - type: object
        additionalProperties: false
        required:
        - companyId
        - createdOn
        - modifiedOn
        - publishedOn
        - documentDate
        properties:
          id:
            type: integer
            format: int64
          contactId:
            type: integer
            format: int64
          companyId:
            type: integer
            format: int64
          status:
            $ref: '#/components/schemas/ReceivableInvoiceStatus'
          createdOn:
            type: string
            format: date-time
            default: CURRENT_TIMESTAMP
            minLength: 1
          modifiedOn:
            type: string
            format: date-time
            default: CURRENT_TIMESTAMP
            minLength: 1
          publishedOn:
            type: string
            format: date-time
            default: CURRENT_TIMESTAMP
            minLength: 1
          documentDate:
            type: string
            format: date-time
            default: CURRENT_TIMESTAMP
            minLength: 1
          published:
            type: boolean
          approved:
            type: boolean
          approvedBy:
            type:
            - integer
            - 'null'
            format: int64
          approvedByClientId:
            type:
            - integer
            - 'null'
            format: int64
          approvedImageUrl:
            type:
            - string
            - 'null'
          documentSerial:
            type:
            - string
            - 'null'
          remarks:
            type:
            - string
            - 'null'
          name:
            type:
            - string
            - 'null'
          value:
            type: number
            format: decimal
          dueDate:
            type:
            - string
            - 'null'
            format: date-time
          expectedDate:
            type:
            - string
            - 'null'
            format: date-time
          createdBy:
            type: integer
            format: int64
          documentId:
            type:
            - string
            - 'null'
          isDelete:
            type: boolean
          vatRate:
            type: integer
            format: int32
          internalNotes:
            type:
            - string
            - 'null'
          galleryId:
            type:
            - integer
            - 'null'
            format: int64
          isVatInclusive:
            type: boolean
          salesId:
            type:
            - integer
            - 'null'
            format: int64
          salesName:
            type:
            - string
            - 'null'
          roundingAdjustment:
            type: number
            format: decimal
          isInlineDiscount:
            type: boolean
            default: false
          isInlineVat:
            type: boolean
            default: false
          tax:
            type:
            - number
            - 'null'
            format: decimal
          documentSerialNoPrefix:
            type:
            - integer
            - 'null'
            format: int64
          vatValue:
            type:
            - number
            - 'null'
            format: decimal
          resetTransactionId:
            type:
            - integer
            - 'null'
            format: int64
          contact:
            oneOf:
            - $ref: '#/components/schemas/Contact'
          approvedByClient:
            oneOf:
            - $ref: '#/components/schemas/User'
          company:
            oneOf:
            - $ref: '#/components/schemas/Company'
          createdByUser:
            oneOf:
            - $ref: '#/components/schemas/User'
          approvedByUser:
            oneOf:
            - $ref: '#/components/schemas/User'
          sales:
            oneOf:
            - $ref: '#/components/schemas/User'
          gallery:
            oneOf:
            - $ref: '#/components/schemas/Gallery'
          inlineVatValue:
            type: number
            format: decimal
          inlineDiscountValue:
            type: number
            format: decimal
          ruleCompileStatus:
            $ref: '#/components/schemas/RuleCompileStatus'
          runningNumberType:
            type: integer
            format: int32
          runningModifiedOn:
            type:
            - string
            - 'null'
            format: date-time
          exemptAmount:
            type: number
            format: decimal
          vatableAmount:
            type: number
            format: decimal
          totalAfterDiscount:
            type: number
            format: decimal
          subTotal:
            type: number
            format: decimal
          documentReferences:
            type:
            - array
            - 'null'
            items:
              $ref: '#/components/schemas/IDocumentReference'
          referencedToMe:
            type:
            - array
            - 'null'
            items:
              $ref: '#/components/schemas/IDocumentReference'
          referencedByMe:
            type:
            - array
            - 'null'
            items:
              $ref: '#/components/schemas/IDocumentReference'
          statusInt:
            type: integer
            format: int32
          isReCalculate:
            type: boolean
          partialPaymentMethod:
            oneOf:
            - $ref: '#/components/schemas/PartialPaymentMethod'
          vatAmount:
            type:
            - number
            - 'null'
            format: decimal
          isMigrate:
            type: boolean
    Company:
      type: object
      additionalProperties: false
      required:
      - nameLocal
      - createdOn
      - modifiedOn
      - contactType
      - logoType
      - isAdvance
      properties:
        id:
          type: integer
          format: int64
        nameLocal:
          type: string
          minLength: 1
        nameForeign:
          type:
          - string
          - 'null'
        addressLocal:
          type:
          - string
          - 'null'
        addressForeign:
          type:
          - string
          - 'null'
        companyTaxId:
          type:
          - string
          - 'null'
        logoImage:
          type:
          - string
          - 'null'
        fax:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
        phone1:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
        phone2:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
        phone3:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
        websites:
          type:
          - string
          - 'null'
          maxLength: 2147483647
          minLength: 0
        companyType:
          $ref: '#/components/schemas/CompanyTypeEnum'
        createdOn:
          type: string
          format: date-time
          default: CURRENT_TIMESTAMP
          minLength: 1
        modifiedOn:
          type: string
          format: date-time
          default: CURRENT_TIMESTAMP
          minLength: 1
        isDefault:
          type: boolean
        addressLocalLine2:
          type:
          - string
          - 'null'
        addressForeignLine2:
          type:
          - string
          - 'null'
        vatRate:
          type: integer
          format: int32
        isVat:
          type: boolean
          default: false
        email:
          type:
          - string
          - 'null'
        branch:
          type:
          - string
          - 'null'
        addressLocalLine3:
          type:
          - string
          - 'null'
        addressForeignLine3:
          type:
          - string
          - 'null'
        contactPerson:
          type:
          - string
          - 'null'
        isActive:
          type: boolean
          default: true
        remarks:
          type:
          - string
          - 'null'
        galleryId:
          type:
          - integer
          - 'null'
          format: int64
        branchForeign:
          type:
          - string
          - 'null'
          maxLength: 2147483647
          minLength: 0
        branchCode:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
        contactType:
          type: integer
          format: int32
        defaultCreditDays:
          type:
          - integer
          - 'null'
          format: int32
        logoType:
          type: integer
          format: int32
        isRegistered:
          type: boolean
          default: true
        isAdvance:
          type: boolean
        address:
          type:
          - string
          - 'null'
        provinceId:
          type:
          - integer
          - 'null'
          format: int32
        amphurId:
          type:
          - integer
          - 'null'
          format: int32
        districtId:
          type:
          - integer
          - 'null'
          format: int32
        zipCode:
          type:
          - string
          - 'null'
        supportCode:
          type:
          - string
          - 'null'
        salesType:
          oneOf:
          - $ref: '#/components/schemas/SalesType'
        companyPreferences:
          oneOf:
          - $ref: '#/components/schemas/CompanyPreferences'
        payrollPreferences:
          oneOf:
          - $ref: '#/components/schemas/PayrollPreferences'
        companySubscription:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CompanySubscription'
    ProductUnit:
      type: object
      additionalProperties: false
      required:
      - name
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
          maxLength: 255
          minLength: 0
        isShare:
          type: boolean
        isDelete:
          type: boolean
    JournalEntryStatus:
      type: integer
      description: '0 = Delete

        1 = Awaiting

        5 = Approved

        9 = Void'
      x-enumNames:
      - Delete
      - Awaiting
      - Approved
      - Void
      enum:
      - 0
      - 1
      - 5
      - 9
    PayrollPreferences:
      type: object
      additionalProperties: false
      properties:
        companyId:
          type: integer
          format: int64
        isSocialSecurityRegistered:
          type: boolean
        employerAccountNumber:
          type:
          - string
          - 'null'
        employerAccountBranch:
          type:
          - string
          - 'null'
        kCorporateClientCode:
          type:
          - string
          - 'null'
        kCorporateAccountNumber:
          type:
          - string
          - 'null'
        payrollBankAccountId:
          type:
          - integer
          - 'null'
          format: int64
        kConnect_ProductCode:
          $ref: '#/components/schemas/KConnectProductCode'
        overtimePND:
          type:
          - integer
          - 'null'
          format: int32
        commissionPND:
          type:
          - integer
          - 'null'
          format: int32
        bonusPND:
          type:
          - integer
          - 'null'
          format: int32
        allowancePND:
          type:
          - integer
          - 'null'
          format: int32
        colaPND:
          type:
          - integer
          - 'null'
          format: int32
        medicalExpensePND:
          type:
          - integer
          - 'null'
          format: int32
        accommodationPND:
          type:
          - integer
          - 'null'
          format: int32
        directorRemunerationPND:
          type:
          - integer
          - 'null'
          format: int32
        otherAdditionPND:
          type:
          - integer
          - 'null'
          format: int32
        accessKConnect:
          type: boolean
    IJournalEntryBase:
      type: object
      x-abstract: true
      additionalProperties: false
      properties:
        id:
          type: integer
          format: int64
        companyId:
          type: integer
          format: int64
        documentSerial:
          type:
          - string
          - 'null'
        documentType:
          $ref: '#/components/schemas/DocumentTypes'
        status:
          $ref: '#/components/schemas/JournalEntryStatus'
        documentDate:
          type: string
          format: date-time
        description:
          type:
          - string
          - 'null'
        descriptionForeign:
          type:
          - string
          - 'null'
        voidDescription:
          type:
          - string
          - 'null'
        createdOn:
          type: string
          format: date-time
        modifiedOn:
          type: string
          format: date-time
        voidedOn:
          type:
          - string
          - 'null'
          format: date-time
        approvedOn:
          type:
          - string
          - 'null'
          format: date-time
        transactionNo:
          type:
          - integer
          - 'null'
          format: int64
        note:
          type:
          - string
          - 'null'
        templateType:
          $ref: '#/components/schemas/JournalEntryTemplateType'
        contactName:
          type:
          - string
          - 'null'
        documentSerialNoPrefix:
          type:
          - integer
          - 'null'
          format: int64
        createdBy:
          type: integer
          format: int64
        modifiedBy:
          type: integer
          format: int64
        approvedBy:
          type:
          - integer
          - 'null'
          format: int64
        voidedBy:
          type:
          - integer
          - 'null'
          format: int64
        galleryId:
          type:
          - integer
          - 'null'
          format: int64
        contactId:
          type:
          - integer
          - 'null'
          format: int64
        runningNumberType:
          oneOf:
          - $ref: '#/components/schemas/RunningNumberType'
        fiscalYearId:
          type:
          - integer
          - 'null'
          format: int64
        reference:
          type:
          - string
          - 'null'
        referenceId:
          type:
          - integer
          - 'null'
          format: int64
        referenceDocumentType:
          oneOf:
          - $ref: '#/components/schemas/DocumentTypes'
        isSystemDocument:
          type: boolean
        ruleCompileStatus:
          $ref: '#/components/schemas/RuleCompileStatus'
    Document2:
      type: object
      additionalProperties: false
    RunningNumberType:
      type: integer
      description: '1 = Default

        3 = YearMonth

        5 = Month

        7 = Year

        9 = FreeHand'
      x-enumNames:
      - Default
      - YearMonth
      - Month
      - Year
      - FreeHand
      enum:
      - 1
      - 3
      - 5
      - 7
      - 9
    SalesType:
      type: integer
      description: '1 = Cash

        3 = Credit

        5 = Both'
      x-enumNames:
      - Cash
      - Credit
      - Both
      enum:
      - 1
      - 3
      - 5
    UpgradeType:
      type: integer
      description: '1 = Upgrade

        3 = Renew

        5 = ChangePackage'
      x-enumNames:
      - Upgrade
      - Renew
      - ChangePackage
      enum:
      - 1
      - 3
      - 5
    ContactResult:
      type: object
      additionalProperties: false
      properties:
        id:
          type: integer
          format: int64
        contactType:
          $ref: '#/components/schemas/ContactTypes'
        code:
          type:
          - string
          - 'null'
        name:
          type:
          - string
          - 'null'
        addressLocal:
          type:
          - string
          - 'null'
        addressLocalLine2:
          type:
          - string
          - 'null'
        addressLocalLine3:
          type:
          - string
          - 'null'
        taxId:
          type:
          - string
          - 'null'
        branch:
          type:
          - string
          - 'null'
        branchCode:
          type:
          - string
          - 'null'
        contactPerson:
          type:
          - string
          - 'null'
        email:
          type:
          - string
          - 'null'
        mobile:
          type:
          - string
          - 'null'
        defaultCreditDays:
          type:
          - integer
          - 'null'
          format: int32
        office:
          type:
          - string
          - 'null'
        fax:
          type:
          - string
          - 'null'
        website:
          type:
          - string
          - 'null'
        shippingAddress:
          type:
          - string
          - 'null'
        internalNotes:
          type:
          - string
          - 'null'
        remarks:
          type:
          - string
          - 'null'
        zipCode:
          type:
          - string
          - 'null'
        bankId:
          type:
          - integer
          - 'null'
          format: int32
        bankName:
          type:
          - string
          - 'null'
        bankBranch:
          type:
          - string
          - 'null'
        bankAccountNumber:
          type:
          - string
          - 'null'
        swiftCode:
          type:
          - string
          - 'null'
        bankAddress:
          type:
          - string
          - 'null'
        useForeignBank:
          type: boolean
        bankAccountType:
          oneOf:
          - $ref: '#/components/schemas/BankAccountType'
        contactGroup:
          $ref: '#/components/schemas/ContactGroups'
        media:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Media'
        qrCode:
          oneOf:
          - $ref: '#/components/schemas/Media'
    ReceivableInvoiceStatus:
      type: integer
      description: '1 = Awaiting

        3 = Approved

        5 = ApprovedAndProcessed

        7 = Void

        9 = Delete'
      x-enumNames:
      - Awaiting
      - Approved
      - ApprovedAndProcessed
      - Void
      - Delete
      enum:
      - 1
      - 3
      - 5
      - 7
      - 9
    ProductCategory:
      type: object
      additionalProperties: false
      properties:
        id:
          type: integer
          format: int64
        name:
          type:
          - string
          - 'null'
        isDelete:
          type: boolean
        isShare:
          type: boolean
        resetTransactionId:
          type:
          - integer
          - 'null'
          format: int64
    ProductNonInventoryType:
      type: integer
      description: '1 = NonStockProduct

        3 = SparepartProduct

        5 = SampleProduct

        7 = FreemiumProduct

        9 = SupplyProduct

        11 = OthersProduct'
      x-enumNames:
      - NonStockProduct
      - SparepartProduct
      - SampleProduct
      - FreemiumProduct
      - SupplyProduct
      - OthersProduct
      enum:
      - 1
      - 3
      - 5
      - 7
      - 9
      - 11
    IDocumentReference:
      type: object
      x-abstract: true
      additionalProperties: false
      properties:
        id:
          type: integer
          format: int64
        companyId:
          type: integer
          format: int64
        referenceId:
          type: integer
          format: int64
        referenceDocumentType:
          $ref: '#/components/schemas/DocumentTypes'
        referenceDocumentSerial:
          type:
          - string
          - 'null'
        documentId:
          type: integer
          format: int64
        documentType:
          $ref: '#/components/schemas/DocumentTypes'
        documentSerial:
          type:
          - string
          - 'null'
        isDelete:
          type: boolean
        type:
          $ref: '#/components/schemas/DocumentReferenceTypes'
        documentStatus:
          type: integer
          format: int32
        documentStatusString:
          type:
          - string
          - 'null'
        documentDate:
          type: string
          format: date-time
        documentAmount:
          type: number
          format: decimal
        documentAmountWithVat:
          type: number
          format: decimal
        refDocumentStatus:
          type: integer
          format: int32
        refDocumentStatusString:
          type:
          - string
          - 'null'
        refDocumentDate:
          type: string
          format: date-time
        refDocumentAmount:
          type: number
          format: decimal
        refDocumentAmountWithVat:
          type: number
          format: decimal
        partialPaymentTotalAmount:
          type: number
          format: decimal
        partialPaymentTotalPercent:
          type: number
          format: decimal
        refCreatedOn:
          type: string
          format: date-time
        refModifiedOn:
          type: string
          format: date-time
        refIsMigrate:
          type: boolean
        isCompileRule:
          type: boolean
        documentCollected:
          type: number
          format: decimal
    User:
      type: object
      additionalProperties: false
      properties:
        id:
          type: integer
          format: int64
        firstname:
          type:
          - string
          - 'null'
          maxLength: 255
          minLength: 0
        lastname:
          type:
          - string
          - 'null'
          maxLength: 255
          minLength: 0
        createdon:
          type: string
          format: date-time
          default: CURRENT_TIMESTAMP
        email:
          type:
          - string
          - 'null'
          maxLength: 255
          minLength: 0
        phoneNumber:
          type:
          - string
          - 'null'
          maxLength: 2147483647
          minLength: 0
        mobile:
          type:
          - string
          - 'null'
          maxLength: 100
          minLength: 0
        referralCode:
          type:
          - string
          - 'null'
          maxLength: 50
          minLength: 0
    JournalEntry:
      type: object
      additionalProperties: false
      required:
      - documentType
      - status
      - documentDate
      - isSystemDocument
      properties:
        id:
          type: integer
          format: int64
        companyId:
          type: integer
          format: int64
        documentSerial:
          type:
          - string
          - 'null'
          maxLength: 100
          minLength: 0
        documentType:
          $ref: '#/components/schemas/DocumentTypes'
        status:
          $ref: '#/components/schemas/JournalEntryStatus'
        documentDate:
          type: string
          format: date-time
          default: CURRENT_TIMESTAMP
          minLength: 1
        description:
          type:
          - string
          - 'null'
          maxLength: 2000
          minLength: 0
        descriptionForeign:
          type:
          - string
          - 'null'
          maxLength: 2000
          minLength: 0
        voidDescription:
          type:
          - string
          - 'null'
          maxLength: 2000
          minLength: 0
        voidedOn:
          type:
          - string
          - 'null'
          format: date-time
        approvedOn:
          type:
          - string
          - 'null'
          format: date-time
        transactionNo:
          type:
          - integer
          - 'null'
          format: int64
        note:
          type:
          - string
          - 'null'
        templateType:
          $ref: '#/components/schemas/JournalEntryTemplateType'
        contactName:
          type:
          - string
          - 'null'
        documentSerialNoPrefix:
          type:
          - integer
          - 'null'
          format: int64
        createdBy:
          type: integer
          format: int64
        modifiedBy:
          type: integer
          format: int64
        approvedBy:
          type:
          - integer
          - 'null'
          format: int64
        voidedBy:
          type:
          - integer
          - 'null'
          format: int64
        galleryId:
          type:
          - integer
          - 'null'
          format: int64
        contactId:
          type:
          - integer
          - 'null'
          format: int64
        runningNumberType:
          oneOf:
          - $ref: '#/components/schemas/RunningNumberType'
        fiscalYear

# --- truncated at 32 KB (71 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/flowaccount/refs/heads/main/openapi/flowaccount-contact-api-openapi.yml