nimbla open api API Reference

nimbla open api

Request Content-Types: application/json
Response Content-Types: application/json
Schemes: https
Version: 1.0.0

Authentication

apiKey

type
apiKey
in
header
name
x-api-key

Quote

Generates a quote for an invoice

POST /v1/quote

Returns Quote.

Data required to generate a quote

client: Organisation
debtor: Organisation
invoices: Invoice (up to 20 chars)
Invoice
accountsReceivable: AccountsReceivable (up to 30 chars)
AccountsReceivable
Request Example
{
  "client": {
    "name": "string",
    "companyNumber": "string",
    "countryCode": "string",
    "registeredAddress": {
      "addressLine1": "string",
      "addressLine2": "string",
      "addressLine3": "string",
      "addressLine4": "string",
      "addressLine5": "string",
      "city": "string",
      "region": "string",
      "postCode": "string",
      "country": "string"
    },
    "rating": {
      "score": "number",
      "daysBeyondTerms": "number",
      "source": "string"
    }
  },
  "debtor": {
    "name": "string",
    "companyNumber": "string",
    "countryCode": "string",
    "registeredAddress": {
      "addressLine1": "string",
      "addressLine2": "string",
      "addressLine3": "string",
      "addressLine4": "string",
      "addressLine5": "string",
      "city": "string",
      "region": "string",
      "postCode": "string",
      "country": "string"
    },
    "rating": {
      "score": "number",
      "daysBeyondTerms": "number",
      "source": "string"
    }
  },
  "invoices": [
    {
      "id": "string",
      "status": "string",
      "value": "number",
      "issueDate": "string (date-time)",
      "dueDate": "string (date-time)",
      "currency": "string",
      "advance": {
        "value": "number",
        "currency": "string"
      },
      "discount": {
        "value": "number"
      }
    }
  ],
  "accountsReceivable": [
    {
      "id": "string",
      "status": "string",
      "value": "number",
      "issueDate": "string (date-time)",
      "dueDate": "string (date-time)",
      "paidDate": "string (date-time)",
      "payments": [
        {
          "value": "number",
          "paidDate": "string (date-time)",
          "currency": "string"
        }
      ]
    }
  ]
}
201 Created

Success

default

Error

Response Example (201 Created)
{
  "result": [
    {
      "id": "string",
      "status": "string",
      "createdAt": "string (date-time)",
      "validUntil": "string (date-time)",
      "invoiceId": "string",
      "fraudFlag": "boolean",
      "premium": "number",
      "insurancePremiumTax": "number",
      "currency": "string",
      "coInsurance": "number"
    }
  ],
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}
Response Example (default )
{
  "result": "object",
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}

Policy

Policy create

POST /v1/policy

Returns Policy.

Data required to generate a quote

quoteIds: string[] (up to 20 chars)
string
Request Example
{
  "quoteIds": [
    "string"
  ]
}
201 Created

Success

default

Error

Response Example (201 Created)
{
  "result": [
    {
      "id": "string",
      "status": "string",
      "createdAt": "string (date-time)",
      "updatedAt": "string (date-time)",
      "quoteId": "string"
    }
  ],
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}
Response Example (default )
{
  "result": "object",
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}

Fetch Policy status

GET /v1/policy/{id}

Returns Policy.

id: string
in path

(no description)

200 OK

Success

default

Error

Response Example (200 OK)
{
  "result": {
    "id": "string",
    "status": "string",
    "createdAt": "string (date-time)",
    "updatedAt": "string (date-time)",
    "quoteId": "string"
  },
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}
Response Example (default )
{
  "result": "object",
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}

Policy status update

PUT /v1/policy/{id}

Returns Policy.

Policy update data

status: string closed
id: string
in path

(no description)

Request Example
{
  "status": "string"
}
200 OK

Success

default

Error

Response Example (200 OK)
{
  "result": {
    "id": "string",
    "status": "string",
    "createdAt": "string (date-time)",
    "updatedAt": "string (date-time)",
    "quoteId": "string"
  },
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}
Response Example (default )
{
  "result": "object",
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}

Schema Definitions

Response: object

statusCode: number
statusMessage: string
statusDescription: string
Example
{
  "statusCode": "number",
  "statusMessage": "string",
  "statusDescription": "string"
}

Organisation: object

name: string
companyNumber: string (8 chars)
countryCode: string GB
registeredAddress: Address
rating: Rating
Example
{
  "name": "string",
  "companyNumber": "string",
  "countryCode": "string",
  "registeredAddress": {
    "addressLine1": "string",
    "addressLine2": "string",
    "addressLine3": "string",
    "addressLine4": "string",
    "addressLine5": "string",
    "city": "string",
    "region": "string",
    "postCode": "string",
    "country": "string"
  },
  "rating": {
    "score": "number",
    "daysBeyondTerms": "number",
    "source": "string"
  }
}

Address: object

addressLine1: string
addressLine2: string
addressLine3: string
addressLine4: string
addressLine5: string
city: string
region: string
postCode: string
country: string
Example
{
  "addressLine1": "string",
  "addressLine2": "string",
  "addressLine3": "string",
  "addressLine4": "string",
  "addressLine5": "string",
  "city": "string",
  "region": "string",
  "postCode": "string",
  "country": "string"
}

Rating: object

score: number
daysBeyondTerms: number
source: string creditsafe
Example
{
  "score": "number",
  "daysBeyondTerms": "number",
  "source": "string"
}

Invoice: object

id: string
status: string OPEN
value: number
issueDate: string (date-time)
dueDate: string (date-time)
currency: string GBP
advance: object
value: number
currency: string GBP
discount: object
value: number 0 ≤ x ≤ 100
Example
{
  "id": "string",
  "status": "string",
  "value": "number",
  "issueDate": "string (date-time)",
  "dueDate": "string (date-time)",
  "currency": "string",
  "advance": {
    "value": "number",
    "currency": "string"
  },
  "discount": {
    "value": "number"
  }
}

AccountsReceivable: object

id: string
status: string OPEN, PAID, DISPUTED, OTHER
value: number
issueDate: string (date-time)
dueDate: string (date-time)
paidDate: string (date-time)
payments: object[]
object
value: number
paidDate: string (date-time)
currency: string GBP
Example
{
  "id": "string",
  "status": "string",
  "value": "number",
  "issueDate": "string (date-time)",
  "dueDate": "string (date-time)",
  "paidDate": "string (date-time)",
  "payments": [
    {
      "value": "number",
      "paidDate": "string (date-time)",
      "currency": "string"
    }
  ]
}

Quote: object

id: string
status: string insurable, uninsurable
createdAt: string (date-time)
validUntil: string (date-time)
invoiceId: string
fraudFlag: boolean
premium: number
insurancePremiumTax: number
currency: string GBP
coInsurance: number 0 ≤ x ≤ 100
Example
{
  "id": "string",
  "status": "string",
  "createdAt": "string (date-time)",
  "validUntil": "string (date-time)",
  "invoiceId": "string",
  "fraudFlag": "boolean",
  "premium": "number",
  "insurancePremiumTax": "number",
  "currency": "string",
  "coInsurance": "number"
}

Policy: object

id: string
status: string active, chase, collection, claim, closed
createdAt: string (date-time)
updatedAt: string (date-time)
quoteId: string
Example
{
  "id": "string",
  "status": "string",
  "createdAt": "string (date-time)",
  "updatedAt": "string (date-time)",
  "quoteId": "string"
}