1730 lines
46 KiB
JSON
1730 lines
46 KiB
JSON
{
|
||
"doc_version": "v1",
|
||
"version": {
|
||
"name": "signald",
|
||
"version": "0.12.0+git2021-01-30rce7ef396.5",
|
||
"branch": "main",
|
||
"commit": "ce7ef39669fc7482b2efe6555bc2962cca8e1ca6"
|
||
},
|
||
"info": "This document describes objects that may be used when communicating with signald.",
|
||
"types": {
|
||
"v1": {
|
||
"JsonMessageEnvelope": {
|
||
"fields": {
|
||
"username": {
|
||
"type": "String",
|
||
"example": "\"+12024561414\""
|
||
},
|
||
"uuid": {
|
||
"type": "String",
|
||
"example": "\"0cc10e61-d64c-4dbc-b51c-334f7dd45a4a\""
|
||
},
|
||
"source": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"sourceDevice": {
|
||
"type": "int"
|
||
},
|
||
"type": {
|
||
"type": "String"
|
||
},
|
||
"relay": {
|
||
"type": "String"
|
||
},
|
||
"timestamp": {
|
||
"type": "long",
|
||
"example": "1612005072095"
|
||
},
|
||
"timestampISO": {
|
||
"type": "String"
|
||
},
|
||
"serverTimestamp": {
|
||
"type": "long"
|
||
},
|
||
"serverDeliveredTimestamp": {
|
||
"type": "long",
|
||
"example": "161200507209580"
|
||
},
|
||
"hasLegacyMessage": {
|
||
"type": "boolean"
|
||
},
|
||
"hasContent": {
|
||
"type": "boolean"
|
||
},
|
||
"isUnidentifiedSender": {
|
||
"type": "boolean"
|
||
},
|
||
"dataMessage": {
|
||
"type": "JsonDataMessage",
|
||
"version": "v1"
|
||
},
|
||
"syncMessage": {
|
||
"type": "JsonSyncMessage",
|
||
"version": "v1"
|
||
},
|
||
"callMessage": {
|
||
"type": "JsonCallMessage",
|
||
"version": "v0"
|
||
},
|
||
"receipt": {
|
||
"type": "JsonReceiptMessage",
|
||
"version": "v0"
|
||
},
|
||
"typing": {
|
||
"type": "JsonTypingMessage",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"SendRequest": {
|
||
"fields": {
|
||
"username": {
|
||
"type": "String",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"recipientAddress": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"recipientGroupId": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\""
|
||
},
|
||
"messageBody": {
|
||
"type": "String",
|
||
"example": "\"hello\""
|
||
},
|
||
"attachments": {
|
||
"list": true,
|
||
"type": "JsonAttachment",
|
||
"version": "v0"
|
||
},
|
||
"quote": {
|
||
"type": "JsonQuote",
|
||
"version": "v1"
|
||
},
|
||
"timestamp": {
|
||
"type": "Long"
|
||
},
|
||
"mentions": {
|
||
"list": true,
|
||
"type": "JsonMention",
|
||
"version": "v1"
|
||
}
|
||
}
|
||
},
|
||
"SendResponse": {
|
||
"fields": {
|
||
"results": {
|
||
"list": true,
|
||
"type": "JsonSendMessageResult",
|
||
"version": "v1"
|
||
},
|
||
"timestamp": {
|
||
"type": "long",
|
||
"example": "1612005072095"
|
||
}
|
||
}
|
||
},
|
||
"ReactRequest": {
|
||
"fields": {
|
||
"username": {
|
||
"type": "String",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"recipientAddress": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"recipientGroupId": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\""
|
||
},
|
||
"reaction": {
|
||
"type": "JsonReaction",
|
||
"version": "v1",
|
||
"required": true
|
||
},
|
||
"timestamp": {
|
||
"type": "long"
|
||
}
|
||
},
|
||
"doc": "react to a previous message"
|
||
},
|
||
"VersionRequest": {
|
||
"fields": {}
|
||
},
|
||
"JsonVersionMessage": {
|
||
"fields": {
|
||
"name": {
|
||
"type": "String",
|
||
"example": "\"signald\""
|
||
},
|
||
"version": {
|
||
"type": "String",
|
||
"example": "\"0.12.0+git2021-01-30rce7ef396.5\""
|
||
},
|
||
"branch": {
|
||
"type": "String",
|
||
"example": "\"main\""
|
||
},
|
||
"commit": {
|
||
"type": "String",
|
||
"example": "\"ce7ef39669fc7482b2efe6555bc2962cca8e1ca6\""
|
||
}
|
||
}
|
||
},
|
||
"AcceptInvitationRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "Accept a v2 group invitation. Note that you must have a profile name set to join groups."
|
||
},
|
||
"JsonGroupV2Info": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\""
|
||
},
|
||
"revision": {
|
||
"type": "int",
|
||
"example": "5"
|
||
},
|
||
"title": {
|
||
"type": "String",
|
||
"example": "\"Parkdale Run Club\""
|
||
},
|
||
"timer": {
|
||
"type": "int",
|
||
"example": "604800"
|
||
},
|
||
"members": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"pendingMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"requestingMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"inviteLink": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"ApproveMembershipRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
},
|
||
"members": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1",
|
||
"doc": "list of requesting members to approve",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "approve a request to join a group"
|
||
},
|
||
"GetGroupRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
},
|
||
"revision": {
|
||
"type": "int",
|
||
"doc": "the latest known revision, default value (-1) forces fetch from server"
|
||
}
|
||
},
|
||
"doc": "Query the server for the latest state of a known group"
|
||
},
|
||
"GetLinkedDevicesRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "list all linked devices on a Signal account"
|
||
},
|
||
"LinkedDevices": {
|
||
"fields": {
|
||
"devices": {
|
||
"list": true,
|
||
"type": "DeviceInfo",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"JoinGroupRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"uri": {
|
||
"type": "String",
|
||
"doc": "The signal.group URL",
|
||
"example": "\"https://signal.group/#CjQKINH_GZhXhfifTcnBkaKTNRxW-hHKnGSq-cJNyPVqHRp8EhDUB7zjKNEl0NaULhsqJCX3\"",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "Join a group using the a signal.group URL. Note that you must have a profile name set to join groups."
|
||
},
|
||
"JsonGroupJoinInfo": {
|
||
"fields": {
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\""
|
||
},
|
||
"title": {
|
||
"type": "String",
|
||
"example": "\"Parkdale Run Club\""
|
||
},
|
||
"memberCount": {
|
||
"type": "int",
|
||
"example": "3"
|
||
},
|
||
"addFromInviteLink": {
|
||
"type": "int"
|
||
},
|
||
"revision": {
|
||
"type": "int",
|
||
"example": "5"
|
||
},
|
||
"pendingAdminApproval": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"ProtocolRequest": {
|
||
"fields": {}
|
||
},
|
||
"RemoveLinkedDeviceRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"deviceId": {
|
||
"type": "long",
|
||
"doc": "the ID of the device to unlink",
|
||
"example": "3",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "Remove a linked device from the Signal account. Only allowed when the local device id is 1"
|
||
},
|
||
"UpdateGroupRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The identifier of the account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
},
|
||
"title": {
|
||
"type": "String",
|
||
"example": "\"Parkdale Run Club\""
|
||
},
|
||
"avatar": {
|
||
"type": "String",
|
||
"example": "\"/tmp/image.jpg\""
|
||
},
|
||
"addMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"removeMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
}
|
||
},
|
||
"doc": "modify a group"
|
||
},
|
||
"GroupInfo": {
|
||
"fields": {
|
||
"v1": {
|
||
"type": "JsonGroupInfo",
|
||
"version": "v1"
|
||
},
|
||
"v2": {
|
||
"type": "JsonGroupV2Info",
|
||
"version": "v1"
|
||
}
|
||
},
|
||
"doc": "A generic type that is used when the group version is not known"
|
||
},
|
||
"SetProfile": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The phone number of the account to use",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"name": {
|
||
"type": "String",
|
||
"doc": "New profile name. Set to empty string for no profile name",
|
||
"example": "\"signald user\"",
|
||
"required": true
|
||
},
|
||
"avatarFile": {
|
||
"type": "String",
|
||
"doc": "Path to new profile avatar file, if the avatar should be updated",
|
||
"example": "\"/tmp/image.jpg\""
|
||
}
|
||
}
|
||
},
|
||
"ResolveAddressRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The signal account to use",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"partial": {
|
||
"type": "JsonAddress",
|
||
"version": "v1",
|
||
"doc": "The partial address, missing fields",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "Resolve a partial JsonAddress with only a number or UUID to one with both. Anywhere that signald accepts a JsonAddress will except a partial, this is a convenience function for client authors, mostly because signald doesn't resolve all the partials it returns"
|
||
},
|
||
"JsonAddress": {
|
||
"fields": {
|
||
"number": {
|
||
"type": "String",
|
||
"doc": "An e164 phone number, starting with +. Currently the only available user-facing Signal identifier.",
|
||
"example": "\"+13215551234\""
|
||
},
|
||
"uuid": {
|
||
"type": "UUID",
|
||
"doc": "A UUID, the unique identifier for a particular Signal account."
|
||
},
|
||
"relay": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"MarkReadRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"to": {
|
||
"type": "JsonAddress",
|
||
"version": "v1",
|
||
"doc": "The address that sent the message being marked as read",
|
||
"required": true
|
||
},
|
||
"timestamps": {
|
||
"list": true,
|
||
"type": "Long",
|
||
"doc": "List of messages to mark as read",
|
||
"example": "1612005072095",
|
||
"required": true
|
||
}
|
||
}
|
||
},
|
||
"GetProfileRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "the signald account to use",
|
||
"required": true
|
||
},
|
||
"async": {
|
||
"type": "boolean",
|
||
"doc": "return results from local store immediately, refreshing from server if needed. If false (default), block until all pending profiles have been retrieved."
|
||
},
|
||
"address": {
|
||
"type": "JsonAddress",
|
||
"version": "v1",
|
||
"doc": "the address to look up",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "Get all information available about a user"
|
||
},
|
||
"Profile": {
|
||
"fields": {
|
||
"name": {
|
||
"type": "String",
|
||
"doc": "The user's name from local contact names if available, or if not in contact list their Signal profile name"
|
||
},
|
||
"avatar": {
|
||
"type": "String"
|
||
},
|
||
"address": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"capabilities": {
|
||
"type": "Capabilities",
|
||
"version": "v1"
|
||
},
|
||
"color": {
|
||
"type": "String"
|
||
},
|
||
"profile_name": {
|
||
"type": "String",
|
||
"doc": "The user's Signal profile name"
|
||
},
|
||
"inbox_position": {
|
||
"type": "Integer"
|
||
},
|
||
"expiration_time": {
|
||
"type": "int"
|
||
}
|
||
},
|
||
"doc": "Information about a Signal user"
|
||
},
|
||
"ListGroupsRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"required": true
|
||
}
|
||
}
|
||
},
|
||
"GroupList": {
|
||
"fields": {
|
||
"groups": {
|
||
"list": true,
|
||
"type": "JsonGroupV2Info",
|
||
"version": "v1"
|
||
},
|
||
"legacyGroups": {
|
||
"list": true,
|
||
"type": "JsonGroupInfo",
|
||
"version": "v1"
|
||
}
|
||
}
|
||
},
|
||
"ListContactsRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"required": true
|
||
},
|
||
"async": {
|
||
"type": "boolean",
|
||
"doc": "return results from local store immediately, refreshing from server if needed. If false (default), block until all pending profiles have been retrieved."
|
||
}
|
||
}
|
||
},
|
||
"ProfileList": {
|
||
"fields": {
|
||
"profiles": {
|
||
"list": true,
|
||
"type": "Profile",
|
||
"version": "v1"
|
||
}
|
||
}
|
||
},
|
||
"JsonDataMessage": {
|
||
"fields": {
|
||
"timestamp": {
|
||
"type": "long",
|
||
"doc": "the timestamp that the message was sent at, according to the sender's device. This is used to uniquely identify this message for things like reactions and quotes.",
|
||
"example": "1612005072095"
|
||
},
|
||
"attachments": {
|
||
"list": true,
|
||
"type": "JsonAttachment",
|
||
"version": "v0",
|
||
"doc": "files attached to the incoming message"
|
||
},
|
||
"body": {
|
||
"type": "String",
|
||
"doc": "the text body of the incoming message.",
|
||
"example": "\"hello\""
|
||
},
|
||
"group": {
|
||
"type": "JsonGroupInfo",
|
||
"version": "v1",
|
||
"doc": "if the incoming message was sent to a v1 group, information about that group will be here"
|
||
},
|
||
"groupV2": {
|
||
"type": "JsonGroupV2Info",
|
||
"version": "v1",
|
||
"doc": "is the incoming message was sent to a v2 group, basic identifying information about that group will be here. For full information, use list_groups"
|
||
},
|
||
"endSession": {
|
||
"type": "boolean"
|
||
},
|
||
"expiresInSeconds": {
|
||
"type": "int",
|
||
"doc": "the expiry timer on the incoming message. Clients should delete records of the message within this number of seconds"
|
||
},
|
||
"profileKeyUpdate": {
|
||
"type": "boolean"
|
||
},
|
||
"quote": {
|
||
"type": "JsonQuote",
|
||
"version": "v1",
|
||
"doc": "if the incoming message is a quote or reply to another message, this will contain information about that message"
|
||
},
|
||
"contacts": {
|
||
"list": true,
|
||
"type": "SharedContact",
|
||
"version": "v0",
|
||
"doc": "if the incoming message has a shared contact, the contact's information will be here"
|
||
},
|
||
"previews": {
|
||
"list": true,
|
||
"type": "JsonPreview",
|
||
"version": "v0",
|
||
"doc": "if the incoming message has a link preview, information about that preview will be here"
|
||
},
|
||
"sticker": {
|
||
"type": "JsonSticker",
|
||
"version": "v0",
|
||
"doc": "if the incoming message is a sticker, information about the sicker will be here"
|
||
},
|
||
"viewOnce": {
|
||
"type": "boolean",
|
||
"doc": "indicates the message is a view once message. View once messages typically include no body and a single image attachment. Official Signal clients will prevent the user from saving the image, and once the user has viewed the image once they will destroy the image."
|
||
},
|
||
"reaction": {
|
||
"type": "JsonReaction",
|
||
"version": "v1",
|
||
"doc": "if the message adds or removes a reaction to another message, this will indicate what change is being made"
|
||
},
|
||
"remoteDelete": {
|
||
"type": "RemoteDelete",
|
||
"version": "v0",
|
||
"doc": "if the inbound message is deleting a previously sent message, indicates which message should be deleted"
|
||
},
|
||
"mentions": {
|
||
"list": true,
|
||
"type": "JsonMention",
|
||
"version": "v1",
|
||
"doc": "list of mentions in the message"
|
||
}
|
||
}
|
||
},
|
||
"JsonSyncMessage": {
|
||
"fields": {
|
||
"sent": {
|
||
"type": "JsonSentTranscriptMessage",
|
||
"version": "v1"
|
||
},
|
||
"contacts": {
|
||
"type": "JsonAttachment",
|
||
"version": "v0"
|
||
},
|
||
"contactsComplete": {
|
||
"type": "boolean"
|
||
},
|
||
"groups": {
|
||
"type": "JsonAttachment",
|
||
"version": "v0"
|
||
},
|
||
"blockedList": {
|
||
"type": "JsonBlockedListMessage",
|
||
"version": "v1"
|
||
},
|
||
"request": {
|
||
"type": "String"
|
||
},
|
||
"readMessages": {
|
||
"list": true,
|
||
"type": "JsonReadMessage",
|
||
"version": "v1"
|
||
},
|
||
"viewOnceOpen": {
|
||
"type": "JsonViewOnceOpenMessage",
|
||
"version": "v1"
|
||
},
|
||
"verified": {
|
||
"type": "JsonVerifiedMessage",
|
||
"version": "v1"
|
||
},
|
||
"configuration": {
|
||
"type": "ConfigurationMessage",
|
||
"version": "v0"
|
||
},
|
||
"stickerPackOperations": {
|
||
"list": true,
|
||
"type": "JsonStickerPackOperationMessage",
|
||
"version": "v0"
|
||
},
|
||
"fetchType": {
|
||
"type": "String"
|
||
},
|
||
"messageRequestResponse": {
|
||
"type": "JsonMessageRequestResponseMessage",
|
||
"version": "v1"
|
||
}
|
||
}
|
||
},
|
||
"JsonQuote": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "long",
|
||
"doc": "the client timestamp of the message being quoted",
|
||
"example": "1612005072095"
|
||
},
|
||
"author": {
|
||
"type": "JsonAddress",
|
||
"version": "v1",
|
||
"doc": "the author of the message being quoted"
|
||
},
|
||
"text": {
|
||
"type": "String",
|
||
"doc": "the body of the message being quoted",
|
||
"example": "\"hey  what's up?\""
|
||
},
|
||
"attachments": {
|
||
"list": true,
|
||
"type": "JsonQuotedAttachment",
|
||
"version": "v0",
|
||
"doc": "list of files attached to the quoted message"
|
||
},
|
||
"mentions": {
|
||
"list": true,
|
||
"type": "JsonMention",
|
||
"version": "v1",
|
||
"doc": "list of mentions in the quoted message"
|
||
}
|
||
},
|
||
"doc": "A quote is a reply to a previous message. ID is the sent time of the message being replied to"
|
||
},
|
||
"JsonMention": {
|
||
"fields": {
|
||
"uuid": {
|
||
"type": "String",
|
||
"doc": "The UUID of the account being mentioned",
|
||
"example": "\"aeed01f0-a234-478e-8cf7-261c283151e7\""
|
||
},
|
||
"start": {
|
||
"type": "int",
|
||
"doc": "The number of characters in that the mention starts at. Note that due to a quirk of how signald encodes JSON, if this value is 0 (for example if the first character in the message is the mention) the field won't show up.",
|
||
"example": "4"
|
||
},
|
||
"length": {
|
||
"type": "int",
|
||
"doc": "The length of the mention represented in the message. Seems to always be 1 but included here in case that changes.",
|
||
"example": "1"
|
||
}
|
||
}
|
||
},
|
||
"JsonSendMessageResult": {
|
||
"fields": {
|
||
"address": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"success": {
|
||
"type": "Success",
|
||
"version": "v0"
|
||
},
|
||
"networkFailure": {
|
||
"type": "boolean",
|
||
"example": "false"
|
||
},
|
||
"unregisteredFailure": {
|
||
"type": "boolean",
|
||
"example": "false"
|
||
},
|
||
"identityFailure": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"JsonReaction": {
|
||
"fields": {
|
||
"emoji": {
|
||
"type": "String",
|
||
"doc": "the emoji to react with",
|
||
"example": "\"👍\""
|
||
},
|
||
"remove": {
|
||
"type": "boolean",
|
||
"doc": "set to true to remove the reaction. requires emoji be set to previously reacted emoji"
|
||
},
|
||
"targetAuthor": {
|
||
"type": "JsonAddress",
|
||
"version": "v1",
|
||
"doc": "the author of the message being reacted to"
|
||
},
|
||
"targetSentTimestamp": {
|
||
"type": "long",
|
||
"doc": "the client timestamp of the message being reacted to",
|
||
"example": "1612005072095"
|
||
}
|
||
}
|
||
},
|
||
"JsonGroupInfo": {
|
||
"fields": {
|
||
"groupId": {
|
||
"type": "String"
|
||
},
|
||
"members": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"name": {
|
||
"type": "String"
|
||
},
|
||
"type": {
|
||
"type": "String"
|
||
},
|
||
"avatarId": {
|
||
"type": "long"
|
||
}
|
||
}
|
||
},
|
||
"Capabilities": {
|
||
"fields": {
|
||
"gv2": {
|
||
"type": "boolean"
|
||
},
|
||
"storage": {
|
||
"type": "boolean"
|
||
},
|
||
"gv1-migration": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"JsonSentTranscriptMessage": {
|
||
"fields": {
|
||
"destination": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"timestamp": {
|
||
"type": "long",
|
||
"example": "1612005072095"
|
||
},
|
||
"expirationStartTimestamp": {
|
||
"type": "long"
|
||
},
|
||
"message": {
|
||
"type": "JsonDataMessage",
|
||
"version": "v1"
|
||
},
|
||
"unidentifiedStatus": {
|
||
"type": "Map"
|
||
},
|
||
"isRecipientUpdate": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"JsonBlockedListMessage": {
|
||
"fields": {
|
||
"addresses": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"groupIds": {
|
||
"list": true,
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"JsonReadMessage": {
|
||
"fields": {
|
||
"sender": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"timestamp": {
|
||
"type": "long",
|
||
"example": "1612005072095"
|
||
}
|
||
}
|
||
},
|
||
"JsonViewOnceOpenMessage": {
|
||
"fields": {
|
||
"sender": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"timestamp": {
|
||
"type": "long",
|
||
"example": "1612005072095"
|
||
}
|
||
}
|
||
},
|
||
"JsonVerifiedMessage": {
|
||
"fields": {
|
||
"destination": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"identityKey": {
|
||
"type": "String"
|
||
},
|
||
"verified": {
|
||
"type": "String"
|
||
},
|
||
"timestamp": {
|
||
"type": "long"
|
||
}
|
||
}
|
||
},
|
||
"JsonMessageRequestResponseMessage": {
|
||
"fields": {
|
||
"person": {
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"groupId": {
|
||
"type": "String"
|
||
},
|
||
"type": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"v0": {
|
||
"JsonAccountList": {
|
||
"fields": {
|
||
"accounts": {
|
||
"list": true,
|
||
"type": "JsonAccount",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"JsonCallMessage": {
|
||
"fields": {
|
||
"offerMessage": {
|
||
"type": "OfferMessage",
|
||
"version": "v0"
|
||
},
|
||
"answerMessage": {
|
||
"type": "AnswerMessage",
|
||
"version": "v0"
|
||
},
|
||
"busyMessage": {
|
||
"type": "BusyMessage",
|
||
"version": "v0"
|
||
},
|
||
"hangupMessage": {
|
||
"type": "HangupMessage",
|
||
"version": "v0"
|
||
},
|
||
"iceUpdateMessages": {
|
||
"list": true,
|
||
"type": "IceUpdateMessage",
|
||
"version": "v0"
|
||
},
|
||
"destinationDeviceId": {
|
||
"type": "int"
|
||
},
|
||
"isMultiRing": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"JsonReceiptMessage": {
|
||
"fields": {
|
||
"type": {
|
||
"type": "String"
|
||
},
|
||
"timestamps": {
|
||
"list": true,
|
||
"type": "Long"
|
||
},
|
||
"when": {
|
||
"type": "long"
|
||
}
|
||
}
|
||
},
|
||
"JsonTypingMessage": {
|
||
"fields": {
|
||
"action": {
|
||
"type": "String"
|
||
},
|
||
"timestamp": {
|
||
"type": "long"
|
||
},
|
||
"groupId": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"JsonAccount": {
|
||
"fields": {
|
||
"deviceId": {
|
||
"type": "int"
|
||
},
|
||
"username": {
|
||
"type": "String"
|
||
},
|
||
"filename": {
|
||
"type": "String"
|
||
},
|
||
"uuid": {
|
||
"type": "String"
|
||
},
|
||
"registered": {
|
||
"type": "boolean"
|
||
},
|
||
"has_keys": {
|
||
"type": "boolean"
|
||
},
|
||
"subscribed": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"JsonAttachment": {
|
||
"fields": {
|
||
"contentType": {
|
||
"type": "String"
|
||
},
|
||
"id": {
|
||
"type": "String"
|
||
},
|
||
"size": {
|
||
"type": "int"
|
||
},
|
||
"storedFilename": {
|
||
"type": "String"
|
||
},
|
||
"filename": {
|
||
"type": "String"
|
||
},
|
||
"customFilename": {
|
||
"type": "String"
|
||
},
|
||
"caption": {
|
||
"type": "String"
|
||
},
|
||
"width": {
|
||
"type": "int"
|
||
},
|
||
"height": {
|
||
"type": "int"
|
||
},
|
||
"voiceNote": {
|
||
"type": "boolean"
|
||
},
|
||
"key": {
|
||
"type": "String"
|
||
},
|
||
"digest": {
|
||
"type": "String"
|
||
},
|
||
"blurhash": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"DeviceInfo": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "long"
|
||
},
|
||
"name": {
|
||
"type": "String"
|
||
},
|
||
"created": {
|
||
"type": "long"
|
||
},
|
||
"lastSeen": {
|
||
"type": "long"
|
||
}
|
||
}
|
||
},
|
||
"SharedContact": {
|
||
"fields": {
|
||
"name": {
|
||
"type": "Name",
|
||
"version": "v0"
|
||
},
|
||
"avatar": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"phone": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"email": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"address": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"organization": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"JsonPreview": {
|
||
"fields": {
|
||
"url": {
|
||
"type": "String"
|
||
},
|
||
"title": {
|
||
"type": "String"
|
||
},
|
||
"attachment": {
|
||
"type": "JsonAttachment",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"JsonSticker": {
|
||
"fields": {
|
||
"packID": {
|
||
"type": "String"
|
||
},
|
||
"packKey": {
|
||
"type": "String"
|
||
},
|
||
"stickerID": {
|
||
"type": "int"
|
||
},
|
||
"attachment": {
|
||
"type": "JsonAttachment",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"RemoteDelete": {
|
||
"fields": {
|
||
"targetSentTimestamp": {
|
||
"type": "long"
|
||
}
|
||
}
|
||
},
|
||
"ConfigurationMessage": {
|
||
"fields": {
|
||
"readReceipts": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"unidentifiedDeliveryIndicators": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"typingIndicators": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"linkPreviews": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"JsonStickerPackOperationMessage": {
|
||
"fields": {
|
||
"packID": {
|
||
"type": "String"
|
||
},
|
||
"packKey": {
|
||
"type": "String"
|
||
},
|
||
"type": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"OfferMessage": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "long"
|
||
},
|
||
"sdp": {
|
||
"type": "String"
|
||
},
|
||
"type": {
|
||
"type": "Type",
|
||
"version": "v0"
|
||
},
|
||
"opaque": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"AnswerMessage": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "long"
|
||
},
|
||
"sdp": {
|
||
"type": "String"
|
||
},
|
||
"opaque": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"BusyMessage": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "long"
|
||
}
|
||
}
|
||
},
|
||
"HangupMessage": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "long"
|
||
},
|
||
"type": {
|
||
"type": "Type",
|
||
"version": "v0"
|
||
},
|
||
"deviceId": {
|
||
"type": "int"
|
||
},
|
||
"legacy": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"IceUpdateMessage": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "long"
|
||
},
|
||
"opaque": {
|
||
"type": "String"
|
||
},
|
||
"sdp": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"JsonQuotedAttachment": {
|
||
"fields": {
|
||
"contentType": {
|
||
"type": "String"
|
||
},
|
||
"fileName": {
|
||
"type": "String"
|
||
},
|
||
"thumbnail": {
|
||
"type": "JsonAttachment",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"Success": {
|
||
"fields": {
|
||
"unidentified": {
|
||
"type": "boolean"
|
||
},
|
||
"needsSync": {
|
||
"type": "boolean"
|
||
},
|
||
"duration": {
|
||
"type": "long"
|
||
}
|
||
}
|
||
},
|
||
"Name": {
|
||
"fields": {
|
||
"display": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"given": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"family": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"prefix": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"suffix": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
},
|
||
"middle": {
|
||
"type": "Optional",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"Optional": {
|
||
"fields": {
|
||
"present": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"Type": {
|
||
"fields": {}
|
||
}
|
||
},
|
||
"v1alpha1": {
|
||
"ProtocolRequest": {
|
||
"fields": {},
|
||
"deprecated": true
|
||
},
|
||
"GetLinkedDevicesRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "list all linked devices on a Signal account",
|
||
"deprecated": true
|
||
},
|
||
"LinkedDevices": {
|
||
"fields": {
|
||
"devices": {
|
||
"list": true,
|
||
"type": "DeviceInfo",
|
||
"version": "v0"
|
||
}
|
||
}
|
||
},
|
||
"RemoveLinkedDeviceRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"deviceId": {
|
||
"type": "long",
|
||
"doc": "the ID of the device to unlink",
|
||
"example": "3",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "Remove a linked device from the Signal account. Only allowed when the local device id is 1",
|
||
"deprecated": true
|
||
},
|
||
"JoinGroupRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"uri": {
|
||
"type": "String",
|
||
"doc": "The signal.group URL",
|
||
"example": "\"https://signal.group/#CjQKINH_GZhXhfifTcnBkaKTNRxW-hHKnGSq-cJNyPVqHRp8EhDUB7zjKNEl0NaULhsqJCX3\"",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "Join a group using the a signal.group URL. Note that you must have a profile name set to join groups.",
|
||
"deprecated": true
|
||
},
|
||
"JsonGroupJoinInfo": {
|
||
"fields": {
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\""
|
||
},
|
||
"title": {
|
||
"type": "String",
|
||
"example": "\"Parkdale Run Club\""
|
||
},
|
||
"memberCount": {
|
||
"type": "int",
|
||
"example": "3"
|
||
},
|
||
"addFromInviteLink": {
|
||
"type": "int"
|
||
},
|
||
"revision": {
|
||
"type": "int",
|
||
"example": "5"
|
||
},
|
||
"pendingAdminApproval": {
|
||
"type": "boolean"
|
||
}
|
||
}
|
||
},
|
||
"UpdateGroupRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
},
|
||
"title": {
|
||
"type": "String",
|
||
"example": "\"Parkdale Run Club\""
|
||
},
|
||
"addMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"removeMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
}
|
||
},
|
||
"doc": "modify a group. only v2 groups for now",
|
||
"deprecated": true
|
||
},
|
||
"JsonGroupV2Info": {
|
||
"fields": {
|
||
"id": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\""
|
||
},
|
||
"revision": {
|
||
"type": "int",
|
||
"example": "5"
|
||
},
|
||
"title": {
|
||
"type": "String",
|
||
"example": "\"Parkdale Run Club\""
|
||
},
|
||
"timer": {
|
||
"type": "int",
|
||
"example": "604800"
|
||
},
|
||
"members": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"pendingMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"requestingMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"inviteLink": {
|
||
"type": "String"
|
||
}
|
||
}
|
||
},
|
||
"AcceptInvitationRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "Accept a v2 group invitation. Note that you must have a profile name set to join groups.",
|
||
"deprecated": true
|
||
},
|
||
"ApproveMembershipRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
},
|
||
"members": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1",
|
||
"doc": "list of requesting members to approve",
|
||
"required": true
|
||
}
|
||
},
|
||
"doc": "approve a request to join a group",
|
||
"deprecated": true
|
||
},
|
||
"GetGroupRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
},
|
||
"revision": {
|
||
"type": "int",
|
||
"doc": "the latest known revision, default value (-1) forces fetch from server"
|
||
}
|
||
},
|
||
"doc": "Query the server for the latest state of a known group",
|
||
"deprecated": true
|
||
}
|
||
},
|
||
"v1alpha2": {
|
||
"UpdateGroupRequest": {
|
||
"fields": {
|
||
"account": {
|
||
"type": "String",
|
||
"doc": "The identifier of the account to interact with",
|
||
"example": "\"+12024561414\"",
|
||
"required": true
|
||
},
|
||
"groupID": {
|
||
"type": "String",
|
||
"example": "\"EdSqI90cS0UomDpgUXOlCoObWvQOXlH5G3Z2d3f4ayE=\"",
|
||
"required": true
|
||
},
|
||
"title": {
|
||
"type": "String",
|
||
"example": "\"Parkdale Run Club\""
|
||
},
|
||
"avatar": {
|
||
"type": "String",
|
||
"example": "\"/tmp/image.jpg\""
|
||
},
|
||
"addMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
},
|
||
"removeMembers": {
|
||
"list": true,
|
||
"type": "JsonAddress",
|
||
"version": "v1"
|
||
}
|
||
},
|
||
"doc": "modify a group",
|
||
"deprecated": true
|
||
},
|
||
"GroupInfo": {
|
||
"fields": {
|
||
"v1": {
|
||
"type": "JsonGroupInfo",
|
||
"version": "v1"
|
||
},
|
||
"v2": {
|
||
"type": "JsonGroupV2Info",
|
||
"version": "v1"
|
||
}
|
||
},
|
||
"doc": "A generic type that is used when the group version is not known"
|
||
}
|
||
}
|
||
},
|
||
"actions": {
|
||
"v1": {
|
||
"send": {
|
||
"request": "SendRequest",
|
||
"response": "SendResponse"
|
||
},
|
||
"react": {
|
||
"request": "ReactRequest",
|
||
"response": "SendResponse",
|
||
"doc": "react to a previous message"
|
||
},
|
||
"version": {
|
||
"request": "VersionRequest",
|
||
"response": "JsonVersionMessage"
|
||
},
|
||
"accept_invitation": {
|
||
"request": "AcceptInvitationRequest",
|
||
"response": "JsonGroupV2Info",
|
||
"doc": "Accept a v2 group invitation. Note that you must have a profile name set to join groups."
|
||
},
|
||
"approve_membership": {
|
||
"request": "ApproveMembershipRequest",
|
||
"response": "JsonGroupV2Info",
|
||
"doc": "approve a request to join a group"
|
||
},
|
||
"get_group": {
|
||
"request": "GetGroupRequest",
|
||
"response": "JsonGroupV2Info",
|
||
"doc": "Query the server for the latest state of a known group"
|
||
},
|
||
"get_linked_devices": {
|
||
"request": "GetLinkedDevicesRequest",
|
||
"response": "LinkedDevices",
|
||
"doc": "list all linked devices on a Signal account"
|
||
},
|
||
"join_group": {
|
||
"request": "JoinGroupRequest",
|
||
"response": "JsonGroupJoinInfo",
|
||
"doc": "Join a group using the a signal.group URL. Note that you must have a profile name set to join groups."
|
||
},
|
||
"protocol": {
|
||
"request": "ProtocolRequest"
|
||
},
|
||
"remove_linked_device": {
|
||
"request": "RemoveLinkedDeviceRequest",
|
||
"doc": "Remove a linked device from the Signal account. Only allowed when the local device id is 1"
|
||
},
|
||
"update_group": {
|
||
"request": "UpdateGroupRequest",
|
||
"response": "GroupInfo",
|
||
"doc": "modify a group"
|
||
},
|
||
"set_profile": {
|
||
"request": "SetProfile"
|
||
},
|
||
"resolve_address": {
|
||
"request": "ResolveAddressRequest",
|
||
"response": "JsonAddress",
|
||
"doc": "Resolve a partial JsonAddress with only a number or UUID to one with both. Anywhere that signald accepts a JsonAddress will except a partial, this is a convenience function for client authors, mostly because signald doesn't resolve all the partials it returns"
|
||
},
|
||
"mark_read": {
|
||
"request": "MarkReadRequest"
|
||
},
|
||
"get_profile": {
|
||
"request": "GetProfileRequest",
|
||
"response": "Profile",
|
||
"doc": "Get all information available about a user"
|
||
},
|
||
"list_groups": {
|
||
"request": "ListGroupsRequest",
|
||
"response": "GroupList"
|
||
},
|
||
"list_contacts": {
|
||
"request": "ListContactsRequest",
|
||
"response": "ProfileList"
|
||
}
|
||
},
|
||
"v1alpha1": {
|
||
"protocol": {
|
||
"request": "ProtocolRequest",
|
||
"deprecated": true
|
||
},
|
||
"get_linked_devices": {
|
||
"request": "GetLinkedDevicesRequest",
|
||
"response": "LinkedDevices",
|
||
"doc": "list all linked devices on a Signal account",
|
||
"deprecated": true
|
||
},
|
||
"remove_linked_device": {
|
||
"request": "RemoveLinkedDeviceRequest",
|
||
"doc": "Remove a linked device from the Signal account. Only allowed when the local device id is 1",
|
||
"deprecated": true
|
||
},
|
||
"join_group": {
|
||
"request": "JoinGroupRequest",
|
||
"response": "JsonGroupJoinInfo",
|
||
"doc": "Join a group using the a signal.group URL. Note that you must have a profile name set to join groups.",
|
||
"deprecated": true
|
||
},
|
||
"update_group": {
|
||
"request": "UpdateGroupRequest",
|
||
"response": "JsonGroupV2Info",
|
||
"doc": "modify a group. only v2 groups for now",
|
||
"deprecated": true
|
||
},
|
||
"accept_invitation": {
|
||
"request": "AcceptInvitationRequest",
|
||
"response": "JsonGroupV2Info",
|
||
"doc": "Accept a v2 group invitation. Note that you must have a profile name set to join groups.",
|
||
"deprecated": true
|
||
},
|
||
"approve_membership": {
|
||
"request": "ApproveMembershipRequest",
|
||
"response": "JsonGroupV2Info",
|
||
"doc": "approve a request to join a group",
|
||
"deprecated": true
|
||
},
|
||
"get_group": {
|
||
"request": "GetGroupRequest",
|
||
"response": "JsonGroupV2Info",
|
||
"doc": "Query the server for the latest state of a known group",
|
||
"deprecated": true
|
||
}
|
||
},
|
||
"v1alpha2": {
|
||
"update_group": {
|
||
"request": "UpdateGroupRequest",
|
||
"response": "GroupInfo",
|
||
"doc": "modify a group",
|
||
"deprecated": true
|
||
}
|
||
}
|
||
}
|
||
}
|