API Key
| Field | Type | Label | Description |
| key | string |
|
Format of Koyo content (in KoyoData)
| Field | Type | Label | Description |
| point | GeoPoint |
|
|
| value | float |
|
|
| optional | Content.OptionalEntry | repeated |
|
| Field | Type | Label | Description |
| key | string |
|
|
| value | string |
|
Represents a date interval from before to after
| Field | Type | Label | Description |
| before | google.protobuf.Timestamp |
|
|
| after | google.protobuf.Timestamp |
|
| Field | Type | Label | Description |
| lat | float |
|
|
| lng | float |
|
ULID https://github.com/ulid/spec
| Field | Type | Label | Description |
| value | string |
|
Semantic versioning https://semver.org/
| Field | Type | Label | Description |
| value | string |
|
Format of data returned by Koyo (in KoyoData)
| Name | Number | Description |
| DATA_TYPE_UNSPECIFIED | 0 | |
| DATA_TYPE_IMAGE | 1 | |
| DATA_TYPE_CSV | 2 | |
| DATA_TYPE_JSON | 3 |
WARNING: THIS IS A SAMPLE
| Field | Type | Label | Description |
| example_data_id | ULID |
|
|
| point | GeoPoint |
|
|
| image | bytes |
|
External Information
ExternalInformation is basic information about External Information
| Field | Type | Label | Description |
| external_id | ULID | optional |
|
| external_name | string | optional |
|
| external_description | string | optional |
|
| license | string | optional | External Information's license type |
| license_description | string | optional |
|
| external_data_ids | ULID | repeated | External Information's data list |
| api_key | APIKey | optional | Required for update notification for this ExternalInformation |
| first_entry_at | google.protobuf.Timestamp | optional | Immutable at the date and time External Information is registered in the belifeline |
| last_updated_at | google.protobuf.Timestamp | optional | Time External Information last updated |
| updated_history | string | repeated | History of updates to External Information |
Koyo Data
KoyoData is the data returned by Koyo. That is, data generated (calculated) by Koyo's algorithm.
| Field | Type | Label | Description |
| koyo_data_id | ULID | optional |
|
| koyo_id | ULID | optional |
|
| koyo_scale | float | optional | The scale used when generating data |
| koyo_data_params | KoyoData.KoyoDataParamsEntry | repeated | Parameters used when generating data |
| content | Content | repeated | Data content |
| entry_at | google.protobuf.Timestamp | optional | Time data was generated |
| target_at | google.protobuf.Timestamp | optional | Time data is targeted (external information daat time) |
| Field | Type | Label | Description |
| key | string |
|
|
| value | string |
|
Koyos Information
KoyoInformation is basic information about Koyo
| Field | Type | Label | Description |
| koyo_id | ULID | optional |
|
| koyo_name | string | optional |
|
| koyo_description | string | optional | Koyo's developers explain what this Koyo is all about |
| need_external | ULID | repeated | List of ExternalInformation required for Koyo to work |
| koyo_params | KoyoInformation.KoyoParamsEntry | repeated | Koyo parameters and their default values. |
| koyo_scales | float | repeated | List of Koyo scale (data resolution) (Area where data exists) |
| koyo_data_ids | ULID | repeated | Koyo's data list |
| version | Version | optional |
|
| license | string | optional | Koyo's license type |
| ext_licenses | string | repeated | List of licenses on which Koyo depends |
| data_type | DataType | optional | Format of data returned by Koyo (in KoyoData) |
| api_key | APIKey | optional |
|
| first_entry_at | google.protobuf.Timestamp | optional | Immutable at the date and time Koyo is registered in the belifeline |
| last_entry_at | google.protobuf.Timestamp | optional | Time koyo last added data |
| last_updated_at | google.protobuf.Timestamp | optional | Time koyo information last updated |
| Field | Type | Label | Description |
| key | string |
|
|
| value | string |
|
Client Information
ClientInformation is basic information about Client
| Field | Type | Label | Description |
| client_id | ULID | optional |
|
| username | string | optional |
|
| api_key | APIKey | optional |
|
| created_at | google.protobuf.Timestamp | optional | Immutable at the date and time the client is registered in the belifeline |
| last_used_at | google.protobuf.Timestamp | optional | Time the client last used the belifeline |
| last_updated_at | google.protobuf.Timestamp | optional | Time the client information last updated |
| Field | Type | Label | Description |
| service | string |
|
| Field | Type | Label | Description |
| status | ServingStatus |
|
| Field | Type | Label | Description |
| client_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| client_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| limit | int32 |
|
| Field | Type | Label | Description |
| client_information_list | belifeline.models.v1.ClientInformation | repeated |
|
| Field | Type | Label | Description |
| client_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| client_id | belifeline.models.v1.ULID |
|
|
| api_key | belifeline.models.v1.APIKey |
|
| Field | Type | Label | Description |
| client_id | belifeline.models.v1.ULID | optional |
|
| username | string |
|
| Field | Type | Label | Description |
| client_information | belifeline.models.v1.ClientInformation |
|
| Field | Type | Label | Description |
| extinfo_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| extinfo_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| extinfo_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| data | bytes |
|
| Field | Type | Label | Description |
| limit | int32 |
|
| Field | Type | Label | Description |
| external_information_list | belifeline.models.v1.ExternalInformation | repeated |
|
| Field | Type | Label | Description |
| external_information | belifeline.models.v1.ExternalInformation |
|
| Field | Type | Label | Description |
| external_information | belifeline.models.v1.ExternalInformation |
|
| Field | Type | Label | Description |
| extinfo_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| extinfo_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| koyo_id | belifeline.models.v1.ULID |
|
|
| api_key | belifeline.models.v1.APIKey |
|
| Field | Type | Label | Description |
| koyo_id | belifeline.models.v1.ULID |
|
|
| api_key | belifeline.models.v1.APIKey |
|
| Field | Type | Label | Description |
| koyo_information | belifeline.models.v1.KoyoInformation |
|
| Field | Type | Label | Description |
| koyo_information | belifeline.models.v1.KoyoInformation |
|
| Field | Type | Label | Description |
| koyo_data | belifeline.models.v1.KoyoData |
|
| Field | Type | Label | Description |
| koyo_data_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| koyo_data_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| koyo_data | belifeline.models.v1.KoyoData |
|
| Field | Type | Label | Description |
| koyo_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| koyo_id | belifeline.models.v1.ULID |
|
| Field | Type | Label | Description |
| limit | int32 |
|
| Field | Type | Label | Description |
| koyo_information_list | belifeline.models.v1.KoyoInformation | repeated |
|
| Field | Type | Label | Description |
| koyo_information | belifeline.models.v1.KoyoInformation |
|
| Field | Type | Label | Description |
| koyo_information | belifeline.models.v1.KoyoInformation |
|
| Field | Type | Label | Description |
| service | string |
|
| Field | Type | Label | Description |
| status | ServingStatus |
|
HealthService
| Name | Number | Description |
| SERVING_STATUS_UNSPECIFIED | 0 | |
| SERVING_STATUS_UNKNOWN | 1 | |
| SERVING_STATUS_SERVING | 2 | |
| SERVING_STATUS_NOT_SERVING | 3 | |
| SERVING_STATUS_SERVICE_UNKNOWN | 4 | Used only by the Watch method. |
Services related to system administration, such as account creation
Administrator (Admin API Key) authentication is required
| Method Name | Request Type | Response Type | Description |
| ClientSet | ClientSetRequest | ClientSetResponse | Create or update a client. The client ID is automatically generated and returned |
| ClientList | ClientListRequest | ClientListResponse | List all clients |
| ClientDelete | ClientDeleteRequest | ClientDeleteResponse | Delete a client |
| ClientRevoke | ClientRevokeRequest | ClientRevokeResponse | Revoke and renew the client's API key. The client's API key is automatically generated and returned |
| ExternalInformationSet | ExternalInformationSetRequest | ExternalInformationSetResponse | Create or update an external information. The external information provider ID is automatically generated and returned |
| ExternalInformationDelete | ExternalInformationDeleteRequest | ExternalInformationDeleteResponse | Delete an external information |
| KoyoCreate | KoyoCreateRequest | KoyoCreateResponse | Create or update a koyo The koyo ID is automatically generated and returned |
| KoyoDelete | KoyoDeleteRequest | KoyoDeleteResponse | Delete a koyo |
| KoyoAPIRevoke | KoyoAPIRevokeRequest | KoyoAPIRevokeResponse | Revoke and renew the koyo's API key. The koyo's API key is automatically generated and returned |
Service that provides something for updating external information
ExternalInformation (External Information API Key) authentication is required.
| Method Name | Request Type | Response Type | Description |
| ExternalInformationUpdateNotification | ExternalInformationUpdateNotificationRequest | ExternalInformationUpdateNotificationResponse | rpc to inform kizuna that extinfo (External API and other information) has been updated |
Health Check Service
No authentication is required and public access is always available
| Method Name | Request Type | Response Type | Description |
| Check | CheckRequest | CheckResponse | Check the health of the service |
| Watch | WatchRequest | WatchResponse stream | Watch the health of the service |
Koyo itself is a service for interacting with Kizuna
Koyo (Koyo Information API Key) authentication is required.
| Method Name | Request Type | Response Type | Description |
| KoyoUpdate | KoyoUpdateRequest | KoyoUpdateResponse | Update koyo information |
| KoyoDataAdd | KoyoDataAddRequest | KoyoDataAddResponse | After koyo processes the data, it calls this rpc to store the generated data (in permanent storage via kizuna) |
Service as an information provider provided by belifeline
Client (Client Information API Key) authentication is required
| Method Name | Request Type | Response Type | Description |
| ExternalInformationList | ExternalInformationListRequest | ExternalInformationListResponse | List all external information |
| KoyoList | KoyoListRequest | KoyoListResponse | List all koyo information |
| ExternalInformationGet | ExternalInformationGetRequest | ExternalInformationGetResponse | Get basic information about External Information |
| KoyoDataGet | KoyoDataGetRequest | KoyoDataGetResponse | Get koyo data generated by Koyo |
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
| double | double | double | float | float64 | double | float | Float | |
| float | float | float | float | float32 | float | float | Float | |
| int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) |
| uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) |
| sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) |
| fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum |
| sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| bool | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | |
| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |
| bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |