Protocol Documentation
Table of Contents
ui.proto
AddAttachmentInput
Field |
Type |
Label |
Description |
---|---|---|---|
content_type |
The content type of the file |
||
extension |
The format of the file (e.g. mp4, jpg, etc.) |
||
size |
The size of the file in bytes |
||
annotation_id |
The id of the annotation to attach the file to |
AddAttachmentOutput
Field |
Type |
Label |
Description |
---|---|---|---|
url |
The url to upload the file to using a PUT request |
||
key |
The key of the file |
AddFlightPlanData
Input data to create a new flightplan
Field |
Type |
Label |
Description |
---|---|---|---|
name |
The name of the flightplan |
||
data |
The data of the flightplan (i.e. a json string) |
AddUserToOrganizationData
Input data to add a user to an organization
Field |
Type |
Label |
Description |
---|---|---|---|
organization_id |
The id of the organization |
||
The email of the user to add |
|||
read_only |
Weather the user should have read only access |
Analysis
Output data for an analysis
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the analysis |
||
media_id |
The id of the media to analyze |
||
type |
The type of the analysis |
||
state |
The state of the analysis |
||
media_list |
repeated |
The list of media to analyze |
|
date |
The creation date of the analysis |
||
field_id |
The id of field to analyze (if any) |
AnalysisList
Output data for a list of analysis
Field |
Type |
Label |
Description |
---|---|---|---|
analysis |
repeated |
The list of analysis |
AnalysisPresignedUrl
Output data for a presigned url
Field |
Type |
Label |
Description |
---|---|---|---|
orthophoto |
Deprecated. The url for the orthophoto |
||
orthophoto_png |
The url for the orthophoto png |
||
grvi |
Deprecated. The url for the GRVI |
||
grvi_png |
Deprecated. The url for the GRVI png |
||
grvi_d |
Deprecated. The url for the GRVI discrete |
||
grvi_d_png |
Deprecated. The url for the GRVI discrete png |
||
shapefiles |
repeated |
Deprecated. The urls for the shapefiles |
|
indexes_map |
repeated |
The data related to the computed indexes |
|
orthophoto_multi_size |
The url for the orthophoto multi size |
||
orthophoto_ms_multi_size |
The url for the orthophoto ms multi size |
AnalysisPresignedUrl.IndexesMapEntry
Field |
Type |
Label |
Description |
---|---|---|---|
key |
|||
value |
AppControl
Input data for an application to send a message to a drone
Field |
Type |
Label |
Description |
---|---|---|---|
drone_id |
The drone id to control |
||
app_id |
The application id to send the message to |
||
timestamp |
(optional) The timestamp of the message |
Application
Output data for an application
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the application |
||
name |
The name of the application |
||
default |
Weather the application is the default application |
ApplicationList
Output data for a list of applications
Field |
Type |
Label |
Description |
---|---|---|---|
applications |
repeated |
The list of applications |
Artifact
Output data for an artifact
Field |
Type |
Label |
Description |
---|---|---|---|
name |
The name of the artifact |
||
url |
The url of the artifact |
ArtifactList
Output data for a list of artifacts
Field |
Type |
Label |
Description |
---|---|---|---|
artifact |
repeated |
The list of artifacts |
Certificate
Output data for a TLS certificate
Field |
Type |
Label |
Description |
---|---|---|---|
key |
The key of the certificate |
||
crt |
The certificate |
||
pfx |
The certificate chain |
CustomerPortal
Defines a customer portal url
Field |
Type |
Label |
Description |
---|---|---|---|
url |
The customer portal url |
Download
Output data to download a file
Field |
Type |
Label |
Description |
---|---|---|---|
name |
The name of the file |
||
url |
The url to download the file from |
DownloadFlightPlanRequest
Input data to download a flightplan
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the flightplan |
||
valid_at_timestamp |
(optional) Weather the flightplan is valid at a specific timestamp |
DownloadItem
Output data to download a file
Field |
Type |
Label |
Description |
---|---|---|---|
url |
The url where to download the file from |
DownloadableFile
Output data for a downloadable file
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the file |
||
name |
The name of the file |
||
version |
The version of the file |
||
created_at |
The creation date of the file |
DownloadableFileList
Output data for a list of downloadable files
Field |
Type |
Label |
Description |
---|---|---|---|
files |
repeated |
The list of downloadable files |
Drone
Output data for a drone
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the drone |
||
name |
The name of the drone |
||
flight_plan |
(optional) The id of the flightplan currently linked to the drone |
DroneDetails
Output data for drone details
Field |
Type |
Label |
Description |
---|---|---|---|
battery |
repeated |
The battery timeserie value |
|
latitude |
repeated |
The latitude timeserie value |
|
longitude |
repeated |
The longitude timeserie value |
|
gps_level |
(optional) The gps level value |
||
state |
(optional) The drone status value |
DroneFrame
Output data for a drone frame
Field |
Type |
Label |
Description |
---|---|---|---|
data |
The frame data |
DroneList
Output data for a list of drones
Field |
Type |
Label |
Description |
---|---|---|---|
drones |
repeated |
The list of drones |
DroneStatus
Output data for the drone status
Field |
Type |
Label |
Description |
---|---|---|---|
metrics |
The drone metrics |
||
download_progress |
(optional) Weather the drone is currently downloading a media |
||
flight_progress |
(optional) The current flight progress |
||
upload_progress |
(optional) The current upload progress |
DroneStatus.FlightProgress
Field |
Type |
Label |
Description |
---|---|---|---|
current_command |
The current command index |
||
total_commands |
The total number of commands |
DroneStatus.UploadProgress
Field |
Type |
Label |
Description |
---|---|---|---|
current_media |
The current media index |
||
total_media |
The total number of media |
Error
Output data for an error
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The error id |
||
timestamp |
The error timestamp |
||
error |
The error object |
||
logs |
repeated |
The logs associated with the error (the last 10 minutes) |
|
metrics |
repeated |
The metrics associated with the error (the last 10 seconds) |
ErrorList
Output data for a list of errors
Field |
Type |
Label |
Description |
---|---|---|---|
errors |
repeated |
The list of errors |
Field
Field
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the field |
||
name |
The name of the field |
||
date |
The creation date of the field |
||
boundary |
repeated |
The boundary of the field |
FieldList
List of fields
Field |
Type |
Label |
Description |
---|---|---|---|
fields |
repeated |
The list of fields |
FlightDetails
Output data for flight details
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the flight |
||
drone |
The id of the drone |
||
flightplan |
(optional) The id of the flightplan (if any) |
||
metrics |
repeated |
The list of metrics |
FlightDetails.Metric
The metrics object
Field |
Type |
Label |
Description |
---|---|---|---|
date |
The timestamp of the metric |
||
metric |
The metrics values |
FlightList
Output data for a list of flights
Field |
Type |
Label |
Description |
---|---|---|---|
flights |
repeated |
The list of flights |
FlightList.Item
A flight item
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the flight |
||
drone |
The id of the drone |
||
flightplan |
(optional) The id of the flightplan (if any) |
||
date |
The date of the flight |
FlightPlan
Output data for a flightplan
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the flightplan |
||
name |
The name of the flightplan |
FlightPlanList
Output data for a list of flightplans
Field |
Type |
Label |
Description |
---|---|---|---|
flight_plan |
repeated |
The list of flightplans |
FlightPlanRaw
Output data for a raw flightplan (i.e. a json string)
Field |
Type |
Label |
Description |
---|---|---|---|
data |
The raw flightplan data |
GetLiveStreamRequest
Input data to get a live stream
Field |
Type |
Label |
Description |
---|---|---|---|
drone_id |
The id of the drone to get the live stream from |
||
camera_settings |
The camera settings to use |
GetUserPermissionInOrganizationData
Input data for retrieving a user’s permission in an organization
Field |
Type |
Label |
Description |
---|---|---|---|
organization_id |
The user id |
IndexData
Data related to an index computation
Field |
Type |
Label |
Description |
---|---|---|---|
png |
The image of the index |
||
tiff |
Deprecated. The index matrix |
||
shapefiles |
repeated |
The list of shapefiles |
|
shapefile_png |
The image of the shapefile |
||
tiff_multi_size |
The index matrix multi size |
LatLng
LatLng point (latitude, longitude)
Field |
Type |
Label |
Description |
---|---|---|---|
latitude |
The latitude |
||
longitude |
The longitude |
Link
Input data to specify a link between two objects
Field |
Type |
Label |
Description |
---|---|---|---|
what |
The id of the object to link from |
||
to |
The id of the object to link to |
LiveStream
Output data for a live stream
Field |
Type |
Label |
Description |
---|---|---|---|
url |
The url of the live stream |
LogList
Output data for a list of logs
Field |
Type |
Label |
Description |
---|---|---|---|
logs |
repeated |
The list of logs |
Media
Output data for a media item
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the media item |
||
name |
The name of the media item |
||
size |
The size of the media item in bytes |
||
date |
The creation date of the media item |
||
extension |
The format of the media item (e.g. mp4, jpg, etc.) |
MediaList
Output data for a list of media
Field |
Type |
Label |
Description |
---|---|---|---|
media |
repeated |
The list of media |
MultiSizeMediaPresignedUrl
Output data for a multi size media presigned url
Field |
Type |
Label |
Description |
---|---|---|---|
full_size |
The url for the full size media |
||
medium_size |
The url for the medium size media |
||
small_size |
The url for the small size media |
||
thumbnail |
The url for the thumbnail size media |
Notification
Output data for a notification
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the notification |
||
type |
The type of the notification |
||
data |
The notification content |
||
timestamp |
The timestamp of the notification |
||
important |
Weather the notification is important |
||
error_code |
The notification error code |
||
drone_id |
The id of the drone generating the notification |
NotificationList
Output data for a list of notifications
Field |
Type |
Label |
Description |
---|---|---|---|
notification |
repeated |
The list of notifications |
ObjectID
Generic object id
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the object |
Organization
Output data for an organization
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the organization |
||
name |
The name of the organization |
||
is_owner |
Weather the user is the owner of the organization |
||
owner |
The email of the owner of the organization |
||
members |
repeated |
The list of members of the organization |
Organization.Member
A member of an organization
Field |
Type |
Label |
Description |
---|---|---|---|
username |
The email of the member |
||
read_only |
Weather the member has read only access |
OrganizationList
Output data for a list of organizations
Field |
Type |
Label |
Description |
---|---|---|---|
organizations |
repeated |
The list of organizations |
RemoveUserFromOrganizationData
Input data to remove a user from an organization
Field |
Type |
Label |
Description |
---|---|---|---|
organization_id |
The id of the organization |
||
The email of the user to remove |
RunAnalysisInput
Input data to run an analysis
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the analysis to run |
||
grvi |
Deprecated. The GRVI options |
||
field_id |
The id of field to analyze (if any) |
||
index_options |
The index options |
RunAnalysisInput.GRVIOptions
The GRVI index options
Field |
Type |
Label |
Description |
---|---|---|---|
zones |
Deprecated. The number of zones to generate |
||
algorithm |
Deprecated. The algorithm to use to generate the zones |
||
thresholds |
repeated |
Deprecated. The thresholds to use to generate the zones (optional) |
RunAnalysisInput.IndexOptions
The index options
Field |
Type |
Label |
Description |
---|---|---|---|
zones |
The number of zones to generate |
||
algorithm |
The algorithm to use to generate the zones |
||
thresholds |
repeated |
The thresholds to use to generate the zones (optional) If set the length of the array must be equal to the number of zones - 1 |
|
index_name |
The name of the index to generate |
||
product_amount |
repeated |
The quantity of the product to set for each zone (optional) If set the length of the array must be equal to the number of zones |
RunAnalysisOutput
Output data for an analysis run
SendCommandsData
Input data to send commands to a drone
Field |
Type |
Label |
Description |
---|---|---|---|
drone_id |
The id of the drone to send the commands to |
||
commands |
repeated |
The list of commands to send |
SendCommandsResponse
Output data for a list of commands
Field |
Type |
Label |
Description |
---|---|---|---|
success |
Weather the commands were sent successfully |
||
message |
The output message or the error message (if any) |
SettingValue
Input data to update a user’s settings
Field |
Type |
Label |
Description |
---|---|---|---|
key |
The key of the setting to update |
||
bool_value |
The value for a boolean setting |
||
string_value |
The value for a string setting |
||
int_value |
The value for a int64 setting |
||
float_value |
The value for a float setting |
Settings
Defines a user’s settings
Field |
Type |
Label |
Description |
---|---|---|---|
auto_start_recording |
Automatically start recording when a drone takes off (and stop when it lands) |
||
auto_start_live_stream |
Automatically start live streaming when a drone takes off (and stop when it lands) |
||
auto_start_live_stream_flight_plan |
Automatically start live streaming when a flight plan is started (and stop when it ends) |
||
take_off_altitude |
The take off altitude |
||
take_off_altitude_flight_plan |
The default take off altitude when a flight plan is started |
||
camera_resolution |
The default camera resolution |
||
stream_resolution |
The default stream resolution |
StartLiveStreamRequest
Input data to start a live stream
Field |
Type |
Label |
Description |
---|---|---|---|
drone_id |
The id of the drone to start the live stream from |
||
camera_settings |
The camera settings to use |
StartLiveStreamResponse
Output data for a live stream
Field |
Type |
Label |
Description |
---|---|---|---|
url |
The url of the live stream |
||
error |
The error message (if any) |
StopLiveStreamRequest
Input data to stop a live stream
Field |
Type |
Label |
Description |
---|---|---|---|
drone_id |
The id of the drone to stop the live stream from |
||
camera_settings |
The camera settings to use |
TimeserieValue
Output data to contain values during time
Field |
Type |
Label |
Description |
---|---|---|---|
timestamp |
The timestamp of the value |
||
value |
The value |
UpdateFlightPlanData
Input data to update a flightplan
Field |
Type |
Label |
Description |
---|---|---|---|
id |
The id of the flightplan to update |
||
data |
The data of the flightplan (i.e. a json string) |
Upload
Output data to upload a file
Field |
Type |
Label |
Description |
---|---|---|---|
url |
The url to upload the file to using a PUT request |
||
id |
The id of the file |
UploadRequest
Input data to upload a file
Field |
Type |
Label |
Description |
---|---|---|---|
content_type |
The content type of the file |
||
extension |
The format of the file (e.g. mp4, jpg, etc.) |
||
size |
The size of the file in bytes |
||
drone_id |
The id of the drone that made the file (optional) |
||
flight_identifier |
The identifier of the flight that made the file (optional) |
UserEmail
Data containing a user email and username pair
Field |
Type |
Label |
Description |
---|---|---|---|
username |
The username of the user |
||
The email of the user |
UserPermissionInOrganization
Defines a user’s permission in an organization
Field |
Type |
Label |
Description |
---|---|---|---|
permission |
The user’s permission |
UserSubscription
Defines user subscription states
Field |
Type |
Label |
Description |
---|---|---|---|
stripe_subscription_id |
The stripe subscription id |
||
state |
The subscription state |
UserUsername
Output data containing a user username
Field |
Type |
Label |
Description |
---|---|---|---|
username |
The username of the user |
Analysis.State
Name |
Number |
Description |
---|---|---|
ANALYSIS_STATE_NONE |
0 |
Unknown analysis state |
ANALYSIS_STATE_CREATED |
1 |
Analysis created |
ANALYSIS_STATE_ANALYZING |
2 |
Analysis is currently running |
ANALYSIS_STATE_COMPLETED |
3 |
Analysis completed |
ANALYSIS_STATE_FAILED |
4 |
Analysis failed |
Analysis.Type
Name |
Number |
Description |
---|---|---|
ANALYSIS_TYPE_UNKNOWN |
0 |
Unknown analysis type |
ANALYSIS_TYPE_ODM |
1 |
ODM analysis type https://opendronemap.org/ |
ANALYSIS_TYPE_AGRICULTURE |
2 |
Agriculture analysis type |
RunAnalysisInput.BucketAlgorithm
Name |
Number |
Description |
---|---|---|
ALGORITHM_DISTRIBUTION |
0 |
The distribution algorithm will divide zones basing on the distribution of the computed values |
ALGORITHM_VALUES |
1 |
The values algorithm will divide zones basing on predefined thresholds |
ALGORITHM_MANUAL |
2 |
The manual algorithm will divide zones basing on the provided thresholds |
SettingValue.Key
Name |
Number |
Description |
---|---|---|
AUTO_START_RECORDING |
0 |
Automatically start recording when a drone takes off (and stop when it lands) |
AUTO_START_LIVE_STREAM |
1 |
Automatically start live streaming when a drone takes off (and stop when it lands) |
AUTO_START_LIVE_STREAM_FLIGHT_PLAN |
2 |
Automatically start live streaming when a flight plan is started (and stop when it ends) |
TAKE_OFF_ALTITUDE |
3 |
The take off altitude |
TAKE_OFF_ALTITUDE_FLIGHT_PLAN |
4 |
The default take off altitude when a flight plan is started |
CAMERA_RESOLUTION |
5 |
The default camera resolution |
STREAM_RESOLUTION |
6 |
The default stream resolution |
UserPermissionInOrganization.Permission
Name |
Number |
Description |
---|---|---|
PERMISSION_NONE |
0 |
No permission |
PERMISSION_READ |
1 |
Read permission |
PERMISSION_WRITE |
2 |
Write permission |
PERMISSION_OWNER |
3 |
Owner permission |
UserSubscription.State
Name |
Number |
Description |
---|---|---|
SUBSCRIPTION_STATE_NONE |
0 |
No subscription |
SUBSCRIPTION_STATE_ACTIVE |
1 |
Active subscription |
SUBSCRIPTION_STATE_INACTIVE |
2 |
Inactive subscription |
AnalysisService
Service to manage analysis (create, delete, etc)
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
ListAnalysis |
Retrieve a list of all analysis |
||
GetAnalysisPresignedUrl |
|||
RunAnalysis |
ControllerService
Service to send realtime commands to drones
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
SendCommands |
Send a list of commands to a drone |
DroneService
Service to manage drones (create, delete, link, etc)
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
ListDrones |
Retrieve a list of all drones |
||
GetDrone |
Retrieve a single drone by id |
||
DeleteDrone |
Delete a drone by id |
||
AddDrone |
Create a new drone |
||
LinkFlightPlanToDrone |
Link a flightplan (what) to a drone (to) |
||
Start |
Start a flightplan on a drone |
||
Stop |
Stop a flightplan on a drone |
||
ListApplications |
List all the available applications |
||
GetDroneDetails |
Retrieve drone details (battery, gps, etc) |
||
DownloadCertificate |
Retrieve drone certificate (used for authentication) |
||
ListFlights |
Retrieve drone flighs |
||
ListFlightPlanFlightsWithDrone |
Retrieve a list of the drone’s flightplan related flights |
||
GetStatus |
Retrieve the current drone status (idle, flying, etc) |
||
StartLiveStream |
Start a live stream on a drone |
||
StopLiveStream |
Stop a live stream on a drone |
||
GetLiveStream |
Retrieve a live stream on a drone |
||
GetFrame |
Retrieve the current live stream frame, if any |
||
GetErrors |
Retrieve a list of all errors for a drone |
||
DeleteError |
Delete an error by id |
||
SignalError |
Signal an error to developers |
||
GetLogs |
Retrieve a list of all logs for a drone |
FieldService
Service to manage files (list, create, delete, etc)
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
ListFields |
Retrieve a list of all fields |
||
GetField |
Retrieve a single field by id |
||
AddField |
Create a new field |
||
DeleteField |
Delete a field |
FlightPlanService
Service to manage flightplans (create, delete, link, etc)
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
ListFlightPlans |
Retrieve a list of all flightplans |
||
GetFlightPlan |
Retrieve a single flightplan by id |
||
AddFlightPlan |
Create a new flightplan |
||
UpdateFlightPlan |
Update a flightplan |
||
DeleteFlightPlan |
Delete a flightplan |
||
DownloadFlightPlan |
Download a flightplan as a json file |
||
ListFlights |
List all ths flights for a flightplan |
||
GetFlightDetails |
Retrieve details for a flight |
FlightService
Service to manage flights
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
ListFlights |
Retrieve a list of the flights |
||
ListMedia |
Retrieve a list of media for a flight |
MediaService
Service to manage media (upload, download, analysis, etc)
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
ListMedia |
Retrieve a list of all media |
||
GetMedia |
Retrieve a single media by id |
||
DeleteMedia |
Delete a media by id |
||
DownloadMedia |
Download a media by id |
||
UploadMedia |
Upload a media, it generates a new presigned url for the upload, the client must upload the file to the url by using HTTP PUT method |
||
UploadMediaCompleted |
UploadMediaCompleted needs to be called by the client after the upload is completed |
||
CreateAnalysis |
Trigger the analysis of a media |
||
GetAnalysis |
Retrieve an analysis by id |
||
GetAnalysisForMedia |
Retrieve a list of all analysis for a media by id |
||
GetArtifacts |
Retrieve all the artifacts for an analysis by id |
||
AddAttachment |
Get an s3 presigned url for an artifact |
||
GetAttachment |
Retrieve an attachment presignedURL by id |
||
DeleteAttachment |
Delete an attachment by id |
MiscService
Service to manage other misc endpoints
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
ListDownloadableFiles |
|||
Download |
Download a file |
||
GetUserEmail |
Get the email address for a user |
||
PollNotifications |
Poll for new notifications |
OrganizationService
Service to manage organizations
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
ListOrganizations |
Retrieve a list of all organizations |
||
GetOrganization |
Retrieve a single organization by id |
||
AddOrganization |
Create a new organization |
||
UpdateOrganization |
Update an organization |
||
DeleteOrganization |
Delete an organization |
||
AddUserToOrganization |
Add a user to an existing organization |
||
RemoveUserFromOrganization |
Remove a user from an existing organization |
UserService
Service to manage users
Method Name |
Request Type |
Response Type |
Description |
---|---|---|---|
GetUserSubscription |
Get the current subscription for a user |
||
GetCustomerPortal |
Get the customer portal address for a user |
||
GetUserPermissionInOrganization |
Get user permissions in an organization |
||
GetSettings |
Get the current user settings |
||
UpdateSettings |
Update the current user settings |
||
DownloadCertificate |
Retrieve the current user certificate (used for authentication) |
Scalar Value Types
.proto Type |
Notes |
C++ |
Java |
Python |
Go |
C# |
PHP |
Ruby |
---|---|---|---|---|---|---|---|---|
double |
double |
float |
float64 |
double |
float |
Float |
||
float |
float |
float |
float32 |
float |
float |
Float |
||
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) |
|
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 |
|
Uses variable-length encoding. |
uint32 |
int |
int/long |
uint32 |
uint |
integer |
Bignum or Fixnum (as required) |
|
Uses variable-length encoding. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum or Fixnum (as required) |
|
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) |
|
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 |
|
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) |
|
Always eight bytes. More efficient than uint64 if values are often greater than 2^56. |
uint64 |
long |
int/long |
uint64 |
ulong |
integer/string |
Bignum |
|
Always four bytes. |
int32 |
int |
int |
int32 |
int |
integer |
Bignum or Fixnum (as required) |
|
Always eight bytes. |
int64 |
long |
int/long |
int64 |
long |
integer/string |
Bignum |
|
bool |
boolean |
boolean |
bool |
bool |
boolean |
TrueClass/FalseClass |
||
A string must always contain UTF-8 encoded or 7-bit ASCII text. |
string |
String |
str/unicode |
string |
string |
string |
String (UTF-8) |
|
May contain any arbitrary sequence of bytes. |
string |
ByteString |
str |
[]byte |
ByteString |
string |
String (ASCII-8BIT) |