GET /v1/rating/module_config/hashmap/types¶Return the list of every mapping type available.
| Return type: | list(unicode) |
|---|
GET /v1/rating/module_config/hashmap/services¶Get the service list
| Return: | List of every services. |
|---|---|
| Return type: | ServiceCollection |
GET /v1/rating/module_config/hashmap/services/(service_id)¶Return a service.
| Parameters: |
|
|---|---|
| Return type: |
POST /v1/rating/module_config/hashmap/services¶Create hashmap service.
| Parameters: |
|
|---|---|
| Return type: |
DELETE /v1/rating/module_config/hashmap/services¶Delete the service and all the sub keys recursively.
| Parameters: |
|
|---|
Service¶Type describing a service.
A service is directly mapped to the usage key, the collected service.
Data samples:
{
"name": "compute",
"service_id": "a733d0e1-1ec9-4800-8df8-671e4affd017"
}
<value>
<service_id>a733d0e1-1ec9-4800-8df8-671e4affd017</service_id>
<name>compute</name>
</value>
name¶| Type: | unicode |
|---|
Name of the service.
service_id¶| Type: | uuid |
|---|
UUID of the service.
ServiceCollection¶Type describing a list of services.
Data samples:
{
"services": [
{
"name": "compute",
"service_id": "a733d0e1-1ec9-4800-8df8-671e4affd017"
}
]
}
<value>
<services>
<item>
<service_id>a733d0e1-1ec9-4800-8df8-671e4affd017</service_id>
<name>compute</name>
</item>
</services>
</value>
services¶| Type: | list(Service) |
|---|
List of services.
GET /v1/rating/module_config/hashmap/fields¶Get the field list.
| Parameters: |
|
|---|---|
| Return: | List of every fields. |
| Return type: |
GET /v1/rating/module_config/hashmap/fields/(field_id)¶Return a field.
| Parameters: |
|
|---|---|
| Return type: |
POST /v1/rating/module_config/hashmap/fields¶Create a field.
| Parameters: |
|
|---|---|
| Return type: |
DELETE /v1/rating/module_config/hashmap/fields¶Delete the field and all the sub keys recursively.
| Parameters: |
|
|---|
Field¶Type describing a field.
A field is mapping a value of the ‘desc’ dict of the CloudKitty data. It’s used to map the name of a metadata.
Data samples:
{
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"name": "image_id",
"service_id": "a733d0e1-1ec9-4800-8df8-671e4affd017"
}
<value>
<field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>
<name>image_id</name>
<service_id>a733d0e1-1ec9-4800-8df8-671e4affd017</service_id>
</value>
field_id¶| Type: | uuid |
|---|
UUID of the field.
name¶| Type: | unicode |
|---|
Name of the field.
service_id¶| Type: | uuid |
|---|
UUID of the parent service.
FieldCollection¶Type describing a list of fields.
Data samples:
{
"fields": [
{
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"name": "image_id",
"service_id": "a733d0e1-1ec9-4800-8df8-671e4affd017"
}
]
}
<value>
<fields>
<item>
<field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>
<name>image_id</name>
<service_id>a733d0e1-1ec9-4800-8df8-671e4affd017</service_id>
</item>
</fields>
</value>
fields¶| Type: | list(Field) |
|---|
List of fields.
GET /v1/rating/module_config/hashmap/mappings¶Get the mapping list
| Parameters: |
|
|---|
filter on tenant). Useful if you want to filter on tenant being None.
:return: List of every mappings.
:type service_id: uuid
:type field_id: uuid
:type group_id: uuid
:type no_group: bool
:type tenant_id: uuid
:type filter_tenant: bool
| Return type: | MappingCollection |
|---|
GET /v1/rating/module_config/hashmap/mappings/(mapping_id)¶Return a mapping.
| Parameters: |
|
|---|---|
| Return type: |
POST /v1/rating/module_config/hashmap/mappings¶Create a mapping.
| Parameters: |
|
|---|---|
| Return type: |
PUT /v1/rating/module_config/hashmap/mappings¶Update a mapping.
| Parameters: |
|
|---|
DELETE /v1/rating/module_config/hashmap/mappings¶Delete a mapping.
| Parameters: |
|
|---|
GET /v1/rating/module_config/hashmap/mappings/group¶Get the group attached to the mapping.
| Parameters: |
|
|---|---|
| Return type: |
Mapping¶Type describing a Mapping.
A mapping is used to apply rating rules based on a value, if the parent is a field then it’s check the value of a metadata. If it’s a service then it directly apply the rate to the volume.
Data samples:
{
"cost": "4.2",
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"mapping_id": "39dbd39d-f663-4444-a795-fb19d81af136",
"tenant_id": "7977999e-2e25-11e6-a8b2-df30b233ffcb",
"type": "flat",
"value": "m1.micro"
}
<value>
<mapping_id>39dbd39d-f663-4444-a795-fb19d81af136</mapping_id>
<value>m1.micro</value>
<type>flat</type>
<cost>4.2</cost>
<field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>
<tenant_id>7977999e-2e25-11e6-a8b2-df30b233ffcb</tenant_id>
</value>
cost¶| Type: | Decimal |
|---|
Value of the mapping.
field_id¶| Type: | uuid |
|---|
UUID of the field.
group_id¶| Type: | uuid |
|---|
UUID of the hashmap group.
map_type¶| Type: | Enum(flat, rate) |
|---|
Type of the mapping.
mapping_id¶| Type: | uuid |
|---|
UUID of the mapping.
service_id¶| Type: | uuid |
|---|
UUID of the service.
tenant_id¶| Type: | uuid |
|---|
UUID of the hashmap tenant.
value¶| Type: | unicode |
|---|
Key of the mapping.
MappingCollection¶Type describing a list of mappings.
Data samples:
{
"mappings": [
{
"cost": "4.2",
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"mapping_id": "39dbd39d-f663-4444-a795-fb19d81af136",
"tenant_id": "7977999e-2e25-11e6-a8b2-df30b233ffcb",
"type": "flat",
"value": "m1.micro"
}
]
}
<value>
<mappings>
<item>
<mapping_id>39dbd39d-f663-4444-a795-fb19d81af136</mapping_id>
<value>m1.micro</value>
<type>flat</type>
<cost>4.2</cost>
<field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>
<tenant_id>7977999e-2e25-11e6-a8b2-df30b233ffcb</tenant_id>
</item>
</mappings>
</value>
mappings¶| Type: | list(Mapping) |
|---|
List of mappings.
Threshold¶Type describing a Threshold.
A threshold is used to apply rating rules based on a level, if the parent is a field then the level is checked against a metadata. If it’s a service then it’s the quantity of the resource that is checked.
Data samples:
{
"cost": "4.2",
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"level": "1024",
"tenant_id": "7977999e-2e25-11e6-a8b2-df30b233ffcb",
"threshold_id": "39dbd39d-f663-4444-a795-fb19d81af136",
"type": "flat"
}
<value>
<threshold_id>39dbd39d-f663-4444-a795-fb19d81af136</threshold_id>
<level>1024</level>
<type>flat</type>
<cost>4.2</cost>
<field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>
<tenant_id>7977999e-2e25-11e6-a8b2-df30b233ffcb</tenant_id>
</value>
cost¶| Type: | Decimal |
|---|
Value of the threshold.
field_id¶| Type: | uuid |
|---|
UUID of the field.
group_id¶| Type: | uuid |
|---|
UUID of the hashmap group.
level¶| Type: | Decimal |
|---|
Level of the threshold.
map_type¶| Type: | Enum(flat, rate) |
|---|
Type of the threshold.
service_id¶| Type: | uuid |
|---|
UUID of the service.
tenant_id¶| Type: | uuid |
|---|
UUID of the hashmap tenant.
threshold_id¶| Type: | uuid |
|---|
UUID of the threshold.
ThresholdCollection¶Type describing a list of mappings.
Data samples:
{
"thresholds": [
{
"cost": "4.2",
"field_id": "ac55b000-a05b-4832-b2ff-265a034886ab",
"level": "1024",
"tenant_id": "7977999e-2e25-11e6-a8b2-df30b233ffcb",
"threshold_id": "39dbd39d-f663-4444-a795-fb19d81af136",
"type": "flat"
}
]
}
<value>
<thresholds>
<item>
<threshold_id>39dbd39d-f663-4444-a795-fb19d81af136</threshold_id>
<level>1024</level>
<type>flat</type>
<cost>4.2</cost>
<field_id>ac55b000-a05b-4832-b2ff-265a034886ab</field_id>
<tenant_id>7977999e-2e25-11e6-a8b2-df30b233ffcb</tenant_id>
</item>
</thresholds>
</value>
thresholds¶| Type: | list(Threshold) |
|---|
List of thresholds.
GET /v1/rating/module_config/hashmap/groups¶Get the group list
| Return: | List of every group. |
|---|---|
| Return type: | GroupCollection |
GET /v1/rating/module_config/hashmap/groups/(group_id)¶Return a group.
| Parameters: |
|
|---|---|
| Return type: |
POST /v1/rating/module_config/hashmap/groups¶Create a group.
| Parameters: |
|
|---|---|
| Return type: |
DELETE /v1/rating/module_config/hashmap/groups¶Delete a group.
| Parameters: |
|
|---|
GET /v1/rating/module_config/hashmap/groups/mappings¶Get the mappings attached to the group.
| Parameters: |
|
|---|---|
| Return type: |
GET /v1/rating/module_config/hashmap/groups/thresholds¶Get the thresholds attached to the group.
| Parameters: |
|
|---|---|
| Return type: |
Group¶Type describing a group.
A group is used to divide calculations. It can be used to create a group for the instance rating (flavor) and one if we have premium images (image_id). So you can take into account multiple parameters during the rating.
Data samples:
{
"group_id": "afe898cb-86d8-4557-ad67-f4f01891bbee",
"name": "instance_rating"
}
<value>
<group_id>afe898cb-86d8-4557-ad67-f4f01891bbee</group_id>
<name>instance_rating</name>
</value>
group_id¶| Type: | uuid |
|---|
UUID of the group.
name¶| Type: | unicode |
|---|
Name of the group.
GroupCollection¶Type describing a list of groups.
Data samples:
{
"groups": [
{
"group_id": "afe898cb-86d8-4557-ad67-f4f01891bbee",
"name": "instance_rating"
}
]
}
<value>
<groups>
<item>
<group_id>afe898cb-86d8-4557-ad67-f4f01891bbee</group_id>
<name>instance_rating</name>
</item>
</groups>
</value>
groups¶| Type: | list(Group) |
|---|
List of groups.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.