Generate pricing estimate

Return an estimate and breakdown of the cost of a configuration.

POST
https://api.katapult.io/public/v1/pricing/estimate

If successful, this endpoint will return a 200 OK status.

Arguments

The following arguments are supported for this endpoint.

Name Type Default Value

customer_name Required

The customer's name

String None

resources Required

An array of resources that should be included in the estimate

PricingEstimateResourceArguments Array None

customer_type Required

The type of customer (for tax purposes)

CustomerTypeEnum None

currency Required

The currency to use for this estimate

Currency Lookup None

country Required

The country to use when calculating the tax rate for this estimate

Country Lookup None

Potential Errors

The following errors may occur during this request.

Details HTTP status

country_not_found

No country was found matching any of the criteria provided in the arguments

404 Not Found

currency_not_found

No currency was found matching any of the criteria provided in the arguments

404 Not Found

invalid_estimate_quantity

The quantity for the provided resource must be greater than zero

400 Bad Request

invalid_estimate_resource

The provided resource is not valid

400 Bad Request

missing_resources

You must provide at least one resource in the resources array

400 Bad Request

Returned Object

When the request is successful, you can expect an object matching the specification below to be returned.

{
    estimate: PricingEstimate {
        resources: [ PricingEstimateResource {
            resource: String
            description: String
            quantity: Integer
            per_month: Decimal
            per_month_inc_tax: Decimal
            per_month_each: Decimal
            per_hour: Decimal
            per_hour_inc_tax: Decimal
            per_hour_each: Decimal
            package: VirtualMachinePackage? {
                id: String
                name: String
                permalink: String
                cpu_cores: Integer
                ipv4_addresses: Integer
                memory_in_gb: Integer
                storage_in_gb: Integer
                monthly_bandwidth_allowance_in_gb: Integer?
                privacy: PrivacyTypesEnum
                icon: Attachment? {
                    url: String
                    file_name: String
                    file_type: String
                    file_size: Integer
                    digest: String
                    token: String
                }
                use_dedicated_cpus: Boolean
            }
        } ]
        per_month: Decimal
        per_month_inc_tax: Decimal
        per_hour: Decimal
        per_hour_inc_tax: Decimal
        currency: Currency {
            id: String
            name: String
            iso_code: String
            symbol: String
        }
        tax_rate: Decimal
        pdf_url: String
    }
}