Kantata Kantata OX Knowledge Base
Release Notes
Status Page

Rate Cards (Multiple Currencies)

Rate Cards belong to a Rate Card Set and represent the currencies in that set. Rate Cards have many Rate Card Versions which represent the effective version of a Rate Card at a specified point of time. Rate Cards are accessible to users with Financial access (Project Lead or higher) on the account. However, they can only created, modified or deleted by Administrators on the account.

Fetching a list of Rate Cards

Returns Rate Cards on every Rate Card Set belonging to the account of the user that is logged-in. This endpoint is only accessible to users with Financial access (Project Lead or higher) on the account.

This endpoint returns structured Rate Card objects. As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the results array and will be indexed by ID in the rate_cards top-level JSON key. Please see our Response Format section for more information.

Request
query Parameters
active
boolean

Returns Rate Cards that have been published.

created_after
string <date-time>

Filter for records created after a specified datetime. The datetime must be in ISO 8601 format.

created_before
string <date-time>

Filter for records created before a specified datetime. The datetime must be in ISO 8601 format.

currencies
string

Restricts Rate Cards to the specified currencies e.g. 'USD,CAD,GBP'.

external_reference_external_message
string

Filter the objects based on the external message of their associated external references. This is an exact match.

external_reference_external_status
string

Filter by the status of the external object in the external system.

external_reference_service_model
string

Filter by the type of the external object this external reference belongs to.

external_reference_service_model_ref
integer <int32>

Filter by the id of the external object this external reference belongs to.

external_reference_service_model_refs
string

Filter for objects that correlate to the specified external object IDs. Provide a comma-separated list of up to 200 external IDs.

external_reference_service_name
string

Filter by the name of the provider for integration.

external_reference_status
string

Filter by the status of the integration, this can be successful or fail.

has_external_references
boolean

Filter by whether or not the object has external references.

include
string

Any of the below associations can be included in your request by providing the include param, e.g. include=association1,association2.

  • effective_rate_card_version (RateCardVersion) - Returns todays effective Rate Card Version for the user that is logged-in. Must be used with the only parameter.
  • external_references (ExternalReference) - Includes references to external integrations for this object.
  • rate_card_set (RateCardSet) - The Rate Card Set to which this Rate Card belongs.
  • rate_card_versions (RateCardVersion) - Includes only Rate Card Versions which this Rate Card owns.
matching
boolean

Returns rate cards matching a provide text value.

matching_title_or_currency
boolean

Returns rate cards matching a provide text value considering either the title or currency code.

only
string

Allows you to request one or more resources directly by ID. Multiple IDs can be supplied in a comma separated list, like GET /api/v1/workspaces.json?only=5,6,7.

order
string
Default: "created_at:desc"

Supply order with the name of a valid sort field for the endpoint and a direction.

Valid values: created_at:asc and created_at:desc.

page
integer <int32>
Default: 1
per_page
integer <int32> <= 200
Default: 20
rate_card_set_id
integer <int32>

Restricts Rate Cards to the specified Rate Card Set.

updated_after
string <date-time>

Filter for records updated after a specified datetime. The datetime must be in ISO 8601 format.

updated_before
string <date-time>

Filter for records updated before a specified datetime. The datetime must be in ISO 8601 format.

without_external_reference_service_name
string

Exclude by the existence of an external reference with the specified service name.

Responses
200

A list of Rate Cards have been retrieved.

Response Schema: application/json
count
integer <int32>
object
Array of objects
object
object
object
object
400

Bad Request

401

Unauthorized request

403

Forbidden request

404

Page Not Found

422

Unprocessable Entity

503

Service is unavailable

get/rate_cards
Request samples
Response samples
application/json
{
  • "count": 0,
  • "meta": {
    },
  • "results": [
    ],
  • "rate_cards": {
    },
  • "external_references": {
    },
  • "rate_card_sets": {
    },
  • "rate_card_versions": {
    }
}

Creating a new Rate Card

Creating a Rate Card automatically creates a Rate Card Version and associates it with the specified Rate Card Set Version. If you are adding a Rate Card with a new currency on a custom Rate Card Set, it needs to be added to the account default Rate Card Set first. When you add a Rate Card with a new currency on a Rate Card Set that already has published Rate Card Set versions, a cloned Rate Card Version will be added to all previous Rate Card Set Versions on the Rate Card Set. A Rate Card can only be created by Administrators on the account.

This endpoint returns structured Rate Card objects. As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the results array and will be indexed by ID in the rate_cards top-level JSON key. Please see our Response Format section for more information.

Request
query Parameters
include
string

Any of the below associations can be included in your request by providing the include param, e.g. include=association1,association2.

  • effective_rate_card_version (RateCardVersion) - Returns todays effective Rate Card Version for the user that is logged-in. Must be used with the only parameter.
  • external_references (ExternalReference) - Includes references to external integrations for this object.
  • rate_card_set (RateCardSet) - The Rate Card Set to which this Rate Card belongs.
  • rate_card_versions (RateCardVersion) - Includes only Rate Card Versions which this Rate Card owns.
Request Body schema: application/json
required
object
rate_card_set_id
required
integer <int32>

The ID of the Rate Card Set to which the Rate Card belongs.

rate_card_set_version_id
required
integer <int32>

The ID of the Rate Card Set Version to which the Rate Card belongs.

currency
required
string

The currency that the Rate Card represents in the Rate Card. For example, USD.

object

Typically populated programmatically by a third party system via an integration, this is an optional object that holds data from an external system. It connects objects in an external system with objects in Kantata OX (for example, to connect a Jira issue to a Kantata OX Project).

Responses
200

Rate Card has been created.

Response Schema: application/json
count
integer <int32>
object
Array of objects
object
object
object
object
400

Bad Request

401

Unauthorized request

403

Forbidden request

404

Page Not Found

422

Unprocessable Entity

503

Service is unavailable

post/rate_cards
Request samples
application/json
{
  • "rate_card": {
    }
}
Response samples
application/json
{
  • "count": 0,
  • "meta": {
    },
  • "results": [
    ],
  • "rate_cards": {
    },
  • "external_references": {
    },
  • "rate_card_sets": {
    },
  • "rate_card_versions": {
    }
}

Fetching a single Rate Card

This endpoint is only accessible to users with Financial access (Project Lead or higher) on the account.

This endpoint returns structured Rate Card objects. As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the results array and will be indexed by ID in the rate_cards top-level JSON key. Please see our Response Format section for more information.

Request
path Parameters
id
required
integer

The ID of the Model.

query Parameters
include
string

Any of the below associations can be included in your request by providing the include param, e.g. include=association1,association2.

  • effective_rate_card_version (RateCardVersion) - Returns todays effective Rate Card Version for the user that is logged-in. Must be used with the only parameter.
  • external_references (ExternalReference) - Includes references to external integrations for this object.
  • rate_card_set (RateCardSet) - The Rate Card Set to which this Rate Card belongs.
  • rate_card_versions (RateCardVersion) - Includes only Rate Card Versions which this Rate Card owns.
Responses
200

The Rate Card has been retrieved.

Response Schema: application/json
count
integer <int32>
object
Array of objects
object
object
object
object
400

Bad Request

401

Unauthorized request

403

Forbidden request

404

Page Not Found

422

Unprocessable Entity

503

Service is unavailable

get/rate_cards/{id}
Request samples
Response samples
application/json
{
  • "count": 0,
  • "meta": {
    },
  • "results": [
    ],
  • "rate_cards": {
    },
  • "external_references": {
    },
  • "rate_card_sets": {
    },
  • "rate_card_versions": {
    }
}

Updating an existing Rate Card

A Rate Card can only be editied by an Administrator on the account. The currency of the Rate Card cannot be changed if it is already in use by a project.

This endpoint returns structured Rate Card objects. As with all Kantata OX API endpoints, the returned data will be referenced in sorted order in the results array and will be indexed by ID in the rate_cards top-level JSON key. Please see our Response Format section for more information.

Request
path Parameters
id
required
integer

The ID of the Model.

query Parameters
include
string

Any of the below associations can be included in your request by providing the include param, e.g. include=association1,association2.

  • effective_rate_card_version (RateCardVersion) - Returns todays effective Rate Card Version for the user that is logged-in. Must be used with the only parameter.
  • external_references (ExternalReference) - Includes references to external integrations for this object.
  • rate_card_set (RateCardSet) - The Rate Card Set to which this Rate Card belongs.
  • rate_card_versions (RateCardVersion) - Includes only Rate Card Versions which this Rate Card owns.
Request Body schema: application/json
required
object
currency
string

The currency that the Rate Card will represent in the Rate Card Set. For example, USD.

object

Typically populated programmatically by a third party system via an integration, this is an optional object that holds data from an external system. It connects objects in an external system with objects in Kantata OX (for example, to connect a Jira issue to a Kantata OX Project).

Responses
200

Rate Card has been updated.

Response Schema: application/json
count
integer <int32>
object
Array of objects
object
object
object
object
400

Bad Request

401

Unauthorized request

403

Forbidden request

404

Page Not Found

422

Unprocessable Entity

503

Service is unavailable

put/rate_cards/{id}
Request samples
application/json
{
  • "rate_card": {
    }
}
Response samples
application/json
{
  • "count": 0,
  • "meta": {
    },
  • "results": [
    ],
  • "rate_cards": {
    },
  • "external_references": {
    },
  • "rate_card_sets": {
    },
  • "rate_card_versions": {
    }
}

Deleting an existing Rate Card

When you delete a Rate Card, its Rate Card Versions and the Rate Card Roles associated with the Rate Card Versions will also be deleted. Once a Rate Card is deleted, neither the Rate Card nor its associated data is recoverable. A Rate Card cannot be deleted if it is already in use by a project. A Rate Card can only be deleted by an Administrator on the account.

The response will contain no content and an HTTP 204 status code if the request was successful, or a standard Kantata OX error message explaining why the object could not be deleted.

Request
path Parameters
id
required
integer

The ID of the Model.

Responses
204

Rate Card has been deleted.

400

Bad Request

401

Unauthorized request

403

Forbidden request

404

Page Not Found

422

Unprocessable Entity

503

Service is unavailable

delete/rate_cards/{id}
Request samples
Response samples
application/json
{
  • "errors": [
    ]
}