74immer::array<ThirdPartyIdentifier>
threepids()
const;
87 , std::string _accessToken
109 using namespace Kazv;
116 if (! jo.is_object()) { jo = json::object(); }
119 jo[
"medium"s] = pod.
medium;
132 if (jo.contains(
"medium"s)) {
133 result.
medium = jo.at(
"medium"s);
135 if (jo.contains(
"address"s)) {
136 result.
address = jo.at(
"address"s);
138 if (jo.contains(
"validated_at"s)) {
141 if (jo.contains(
"added_at"s)) {
142 result.
addedAt = jo.at(
"added_at"s);
212std::optional<std::string>
submitUrl()
const;
229 , std::string _accessToken
231 ThreePidCredentials threePidCreds
251 using namespace Kazv;
258 if (! jo.is_object()) { jo = json::object(); }
267 jo[
"sid"s] = pod.
sid;
274 if (jo.contains(
"client_secret"s)) {
277 if (jo.contains(
"id_server"s)) {
278 result.
idServer = jo.at(
"id_server"s);
280 if (jo.contains(
"id_access_token"s)) {
283 if (jo.contains(
"sid"s)) {
284 result.
sid = jo.at(
"sid"s);
339 , std::string _accessToken
341 std::string clientSecret , std::string sid , std::optional<AuthenticationData> auth = std::nullopt
348 static BaseJob::Body buildBody(std::string clientSecret, std::string sid, std::optional<AuthenticationData> auth);
361 using namespace Kazv;
415 , std::string _accessToken
417 std::string clientSecret , std::string idServer , std::string idAccessToken , std::string sid
424 static BaseJob::Body buildBody(std::string clientSecret, std::string idServer, std::string idAccessToken, std::string sid);
437 using namespace Kazv;
503 , std::string _accessToken
505 std::string medium , std::string address , std::optional<std::string> idServer = std::nullopt
512 static BaseJob::Body buildBody(std::string medium, std::string address, std::optional<std::string> idServer);
525 using namespace Kazv;
590 , std::string _accessToken
592 std::string medium , std::string address , std::optional<std::string> idServer = std::nullopt
599 static BaseJob::Body buildBody(std::string medium, std::string address, std::optional<std::string> idServer);
612 using namespace Kazv;
702 using namespace Kazv;
790 using namespace Kazv;
Definition administrative_contact.hpp:311
bool success() const
Definition administrative_contact.cpp:244
Adds contact information to the user's account.
Definition administrative_contact.hpp:305
static constexpr auto needsAuth()
Definition administrative_contact.hpp:318
Add3PIDJob withData(JsonWrap j) &&
Definition administrative_contact.cpp:227
static BaseJob::Query buildQuery()
Definition administrative_contact.cpp:177
static BaseJob::Body buildBody(std::string clientSecret, std::string sid, std::optional< AuthenticationData > auth)
Definition administrative_contact.cpp:185
Definition administrative_contact.hpp:385
bool success() const
Definition administrative_contact.cpp:324
Binds a 3PID to the user's account through an Identity Service.
Definition administrative_contact.hpp:379
static BaseJob::Body buildBody(std::string clientSecret, std::string idServer, std::string idAccessToken, std::string sid)
Definition administrative_contact.cpp:263
static constexpr auto needsAuth()
Definition administrative_contact.hpp:392
Bind3PIDJob withData(JsonWrap j) &&
Definition administrative_contact.cpp:307
static BaseJob::Query buildQuery()
Definition administrative_contact.cpp:255
Definition administrative_contact.hpp:460
std::string idServerUnbindResult() const
An indicator as to whether or not the homeserver was able to unbind the 3PID from the identity server...
Definition administrative_contact.cpp:413
bool success() const
Definition administrative_contact.cpp:402
Deletes a third party identifier from the user's account.
Definition administrative_contact.hpp:454
static BaseJob::Query buildQuery()
Definition administrative_contact.cpp:335
Delete3pidFromAccountJob withData(JsonWrap j) &&
Definition administrative_contact.cpp:385
static constexpr auto needsAuth()
Definition administrative_contact.hpp:480
static BaseJob::Body buildBody(std::string medium, std::string address, std::optional< std::string > idServer)
Definition administrative_contact.cpp:343
Definition administrative_contact.hpp:55
bool success() const
Definition administrative_contact.cpp:70
immer::array< ThirdPartyIdentifier > threepids() const
Gets a list of the third party identifiers that the homeserver has associated with the user's account...
Definition administrative_contact.cpp:80
Gets a list of a user's third party identifiers.
Definition administrative_contact.hpp:26
static BaseJob::Body buildBody()
Definition administrative_contact.cpp:21
GetAccount3PIDsJob withData(JsonWrap j) &&
Definition administrative_contact.cpp:53
static BaseJob::Query buildQuery()
Definition administrative_contact.cpp:13
static constexpr auto needsAuth()
Definition administrative_contact.hpp:77
Definition administrative_contact.hpp:189
bool success() const
Definition administrative_contact.cpp:155
std::optional< std::string > submitUrl() const
An optional field containing a URL where the client must submit the validation token to,...
Definition administrative_contact.cpp:165
Adds contact information to the user's account.
Definition administrative_contact.hpp:166
Post3PIDsJob withData(JsonWrap j) &&
Definition administrative_contact.cpp:138
static constexpr auto needsAuth()
Definition administrative_contact.hpp:215
static BaseJob::Body buildBody(ThreePidCredentials threePidCreds)
Definition administrative_contact.cpp:100
static BaseJob::Query buildQuery()
Definition administrative_contact.cpp:92
Definition administrative_contact.hpp:637
RequestTokenResponse data() const
An email was sent to the given address.
Definition administrative_contact.hpp:650
bool success() const
Definition administrative_contact.cpp:573
Begins the validation process for an email address for association with the user's account.
Definition administrative_contact.hpp:631
static BaseJob::Body buildBody(EmailValidationData body)
Definition administrative_contact.cpp:523
static constexpr auto needsAuth()
Definition administrative_contact.hpp:659
static BaseJob::Query buildQuery()
Definition administrative_contact.cpp:515
RequestTokenTo3PIDEmailJob withData(JsonWrap j) &&
Definition administrative_contact.cpp:556
Definition administrative_contact.hpp:727
bool success() const
Definition administrative_contact.cpp:642
RequestTokenResponse data() const
An SMS message was sent to the given phone number.
Definition administrative_contact.hpp:738
Begins the validation process for a phone number for association with the user's account.
Definition administrative_contact.hpp:721
static BaseJob::Query buildQuery()
Definition administrative_contact.cpp:584
static constexpr auto needsAuth()
Definition administrative_contact.hpp:747
static BaseJob::Body buildBody(MsisdnValidationData body)
Definition administrative_contact.cpp:592
RequestTokenTo3PIDMSISDNJob withData(JsonWrap j) &&
Definition administrative_contact.cpp:625
Definition administrative_contact.hpp:548
std::string idServerUnbindResult() const
An indicator as to whether or not the identity server was able to unbind the 3PID.
Definition administrative_contact.cpp:503
bool success() const
Definition administrative_contact.cpp:492
Removes a user's third party identifier from an identity server.
Definition administrative_contact.hpp:542
static BaseJob::Query buildQuery()
Definition administrative_contact.cpp:425
static constexpr auto needsAuth()
Definition administrative_contact.hpp:567
Unbind3pidFromAccountJob withData(JsonWrap j) &&
Definition administrative_contact.cpp:475
static BaseJob::Body buildBody(std::string medium, std::string address, std::optional< std::string > idServer)
Definition administrative_contact.cpp:433
Definition basejob.hpp:94
Definition basejob.hpp:68
::Kazv::Body Body
Definition basejob.hpp:103
Definition jsonwrap.hpp:23
Definition location.hpp:10
Definition location.hpp:10
nlohmann::json json
Definition jsonwrap.hpp:20
Definition location.hpp:27
Definition request_email_validation.hpp:13
Gets a list of the third party identifiers that the homeserver has associated with the user's account...
Definition administrative_contact.hpp:39
std::int_fast64_t addedAt
The timestamp, in milliseconds, when the homeserver associated the third party identifier with the us...
Definition administrative_contact.hpp:48
std::string address
The third party identifier address.
Definition administrative_contact.hpp:43
std::string medium
The medium of the third party identifier.
Definition administrative_contact.hpp:41
std::int_fast64_t validatedAt
The timestamp, in milliseconds, when the identifier was validated by the identity server.
Definition administrative_contact.hpp:46
Definition request_msisdn_validation.hpp:13
The third party credentials to associate with the account.
Definition administrative_contact.hpp:172
std::string sid
The session identifier given by the identity server.
Definition administrative_contact.hpp:182
std::string clientSecret
The client secret used in the session with the identity server.
Definition administrative_contact.hpp:174
std::string idAccessToken
An access token previously registered with the identity server.
Definition administrative_contact.hpp:180
std::string idServer
The identity server to use.
Definition administrative_contact.hpp:176
Definition request_token_response.hpp:13
Definition basejob.hpp:49
JsonWrap jsonBody() const
Definition basejob.cpp:141
static void from_json(const json &jo, GetAccount3PIDsJob::ThirdPartyIdentifier &result)
Definition administrative_contact.hpp:129
static void to_json(json &jo, const GetAccount3PIDsJob::ThirdPartyIdentifier &pod)
Definition administrative_contact.hpp:114
static void from_json(const json &jo, Post3PIDsJob::ThreePidCredentials &result)
Definition administrative_contact.hpp:271
static void to_json(json &jo, const Post3PIDsJob::ThreePidCredentials &pod)
Definition administrative_contact.hpp:256