Skip to content

Allo Endpoints

Aditya Vaidyam edited this page Jan 27, 2018 · 2 revisions
public final class kuq {
    public static final ldx<lbk, lbm> f22558A = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "SetPreKeys"), ux.m10572a(new lim(52)), ux.m10572a(new lim(53)));
    public static final ldx<lam, lan> f22559B = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "BlockUsers"), ux.m10572a(new lim(54)), ux.m10572a(new lim(55)));
    public static final ldx<las, lat> f22560C = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetBlockedUsers"), ux.m10572a(new lim(56)), ux.m10572a(new lim(57)));
    public static final ldx<lbp, lbq> f22561D = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "UnblockUsers"), ux.m10572a(new lim(58)), ux.m10572a(new lim(59)));
    public static final ldx<laj, lal> f22562E = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "AddSpamSignal"), ux.m10572a(new lim(60)), ux.m10572a(new lim(61)));
    public static final ldx<kxt, kxu> f22563F = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetBotList"), ux.m10572a(new lim(62)), ux.m10572a(new lim(63)));
    public static final ldx<kxv, kxw> f22564G = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetBotMetadata"), ux.m10572a(new lim(64)), ux.m10572a(new lim(65)));
    public static final ldx<kwh, kwj> f22565H = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "DeleteUserMessages"), ux.m10572a(new lim(66)), ux.m10572a(new lim(67)));
    public static final ldx<kwc, kwd> f22566I = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "ClearConversationHistory"), ux.m10572a(new lim(68)), ux.m10572a(new lim(69)));
    public static final ldx<kzh, kzi> f22567J = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "SetConversationMutes"), ux.m10572a(new lim(70)), ux.m10572a(new lim(71)));
    public static final ldx<kzf, kzg> f22568K = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "RemoveAllConversationMutes"), ux.m10572a(new lim(72)), ux.m10572a(new lim(73)));
    public static final ldx<kwk, kwl> f22569L = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetConversations"), ux.m10572a(new lim(74)), ux.m10572a(new lim(75)));
    public static final ldx<kvi, kvj> f22570M = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "SetAuxiliaryContactInfo"), ux.m10572a(new lim(76)), ux.m10572a(new lim(77)));
    public static final ldx<kxe, kxf> f22571a = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "Register"), ux.m10572a(new lim(0)), ux.m10572a(new lim(1)));
    public static final ldx<kxg, kxh> f22572b = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "RegisterSilent"), ux.m10572a(new lim(2)), ux.m10572a(new lim(3)));
    public static final ldx<kxc, kxd> f22573c = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "RegisterRefresh"), ux.m10572a(new lim(4)), ux.m10572a(new lim(5)));
    public static final ldx<kxp, kxq> f22574d = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "Verify"), ux.m10572a(new lim(6)), ux.m10572a(new lim(7)));
    public static final ldx<kxm, kxn> f22575e = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "Unregister"), ux.m10572a(new lim(8)), ux.m10572a(new lim(9)));
    public static final ldx<kwf, kwg> f22576f = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "DeleteAccount"), ux.m10572a(new lim(10)), ux.m10572a(new lim(11)));
    public static final ldx<kwx, kwy> f22577g = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "LookupRegistered"), ux.m10572a(new lim(12)), ux.m10572a(new lim(13)));
    public static final ldx<kwv, kww> f22578h = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "SendMessage"), ux.m10572a(new lim(14)), ux.m10572a(new lim(15)));
    public static final ldx<kwv, kww> f22579i = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "SendBotCommand"), ux.m10572a(new lim(16)), ux.m10572a(new lim(17)));
    public static final ldx<kwq, kws> f22580j = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "AckMessages"), ux.m10572a(new lim(18)), ux.m10572a(new lim(19)));
    public static final ldx<kvn, kvu> f22581k = ldx.m22238a(ldz.BIDI_STREAMING, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "Bind"), ux.m10572a(new lim(20)), ux.m10572a(new lim(21)));
    public static final ldx<kxi, kxj> f22582l = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "ResetBadgeCount"), ux.m10572a(new lim(22)), ux.m10572a(new lim(23)));
    public static final ldx<kzq, kzr> f22583m = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "CreateGroup"), ux.m10572a(new lim(24)), ux.m10572a(new lim(25)));
    public static final ldx<kzk, kzl> f22584n = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "AddGroupUsers"), ux.m10572a(new lim(26)), ux.m10572a(new lim(27)));
    public static final ldx<lac, lad> f22585o = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "KickGroupUsers"), ux.m10572a(new lim(28)), ux.m10572a(new lim(29)));
    public static final ldx<kzn, kzo> f22586p = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "ChangeGroupProfile"), ux.m10572a(new lim(30)), ux.m10572a(new lim(31)));
    public static final ldx<kzs, kzt> f22587q = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetGroupIds"), ux.m10572a(new lim(32)), ux.m10572a(new lim(33)));
    public static final ldx<kzu, kzv> f22588r = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetGroupInfos"), ux.m10572a(new lim(34)), ux.m10572a(new lim(35)));
    public static final ldx<kzw, kzx> f22589s = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetGroupReceipts"), ux.m10572a(new lim(36)), ux.m10572a(new lim(37)));
    public static final ldx<kwm, kwn> f22590t = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetICEServer"), ux.m10572a(new lim(38)), ux.m10572a(new lim(39)));
    public static final ldx<lbi, lbj> f22591u = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "SetContacts"), ux.m10572a(new lim(40)), ux.m10572a(new lim(41)));
    public static final ldx<lah, lai> f22592v = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "AddContacts"), ux.m10572a(new lim(42)), ux.m10572a(new lim(43)));
    public static final ldx<lbg, lbh> f22593w = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "RemoveContacts"), ux.m10572a(new lim(44)), ux.m10572a(new lim(45)));
    public static final ldx<lbn, lbo> f22594x = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "SetProfile"), ux.m10572a(new lim(46)), ux.m10572a(new lim(47)));
    public static final ldx<lax, lay> f22595y = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetProfile"), ux.m10572a(new lim(48)), ux.m10572a(new lim(49)));
    public static final ldx<lau, lav> f22596z = ldx.m22238a(ldz.UNARY, ldx.m22237a("google.internal.communications.instantmessaging.v1.IM", "GetPreKey"), ux.m10572a(new lim(50)), ux.m10572a(new lim(51)));

    public static kut m21528a(lca lca) {
        return new kut(lca);
    }

    public static kus m21530b(lca lca) {
        return new kus(lca);
    }

    public static leq m21529a() {
        return new leq("google.internal.communications.instantmessaging.v1.IM", f22571a, f22572b, f22573c, f22574d, f22575e, f22576f, f22577g, f22578h, f22579i, f22580j, f22581k, f22582l, f22583m, f22584n, f22585o, f22586p, f22587q, f22588r, f22589s, f22590t, f22591u, f22592v, f22593w, f22594x, f22595y, f22596z, f22558A, f22559B, f22560C, f22561D, f22562E, f22563F, f22564G, f22565H, f22566I, f22567J, f22568K, f22569L, f22570M);
    }
}

public final class kxe extends kfc<kxe> {
    public kyz f22803a;
    public kyq f22804b;
    public kxb f22805c;
    public String f22806d;
    public String f22807e;
    public kyo f22808f;
    public kyx f22809g;
    public int f22810h;
    private byte[] f22811i;
    private String f22812j;
    private byte[] f22813k;
    private String f22814l;
    private boolean f22815m;

    public kxe() {
        this.f22806d = "";
        this.f22811i = kfo.f20808g;
        this.f22812j = "";
        this.f22807e = "";
        this.f22813k = kfo.f20808g;
        this.f22814l = "";
        this.f22810h = 0;
        this.f22815m = false;
        this.w = -1;
    }

    public final void mo2654a(kfb kfb) {
        if (!this.f22806d.equals("")) {
            kfb.m20334a(3, this.f22806d);
        }
        if (!Arrays.equals(this.f22811i, kfo.f20808g)) {
            kfb.m20337a(4, this.f22811i);
        }
        if (this.f22803a != null) {
            kfb.m20335a(6, this.f22803a);
        }
        if (!this.f22807e.equals("")) {
            kfb.m20334a(7, this.f22807e);
        }
        if (!Arrays.equals(this.f22813k, kfo.f20808g)) {
            kfb.m20337a(8, this.f22813k);
        }
        if (this.f22804b != null) {
            kfb.m20335a(10, this.f22804b);
        }
        if (!this.f22812j.equals("")) {
            kfb.m20334a(11, this.f22812j);
        }
        if (this.f22808f != null) {
            kfb.m20335a(14, this.f22808f);
        }
        if (this.f22809g != null) {
            kfb.m20335a(16, this.f22809g);
        }
        if (!this.f22814l.equals("")) {
            kfb.m20334a(17, this.f22814l);
        }
        if (this.f22805c != null) {
            kfb.m20335a(18, this.f22805c);
        }
        if (this.f22810h != 0) {
            kfb.m20332a(19, this.f22810h);
        }
        if (this.f22815m) {
            kfb.m20336a(20, this.f22815m);
        }
        super.mo2654a(kfb);
    }

    protected final int mo2653a() {
        int a = super.mo2653a();
        if (!this.f22806d.equals("")) {
            a += kfb.m20308b(3, this.f22806d);
        }
        if (!Arrays.equals(this.f22811i, kfo.f20808g)) {
            a += kfb.m20311b(4, this.f22811i);
        }
        if (this.f22803a != null) {
            a += kfb.m20315c(6, this.f22803a);
        }
        if (!this.f22807e.equals("")) {
            a += kfb.m20308b(7, this.f22807e);
        }
        if (!Arrays.equals(this.f22813k, kfo.f20808g)) {
            a += kfb.m20311b(8, this.f22813k);
        }
        if (this.f22804b != null) {
            a += kfb.m20315c(10, this.f22804b);
        }
        if (!this.f22812j.equals("")) {
            a += kfb.m20308b(11, this.f22812j);
        }
        if (this.f22808f != null) {
            a += kfb.m20315c(14, this.f22808f);
        }
        if (this.f22809g != null) {
            a += kfb.m20315c(16, this.f22809g);
        }
        if (!this.f22814l.equals("")) {
            a += kfb.m20308b(17, this.f22814l);
        }
        if (this.f22805c != null) {
            a += kfb.m20315c(18, this.f22805c);
        }
        if (this.f22810h != 0) {
            a += kfb.m20318d(19, this.f22810h);
        }
        if (!this.f22815m) {
            return a;
        }
        boolean z = this.f22815m;
        return a + (kfb.m20317d(20) + 1);
    }

    public final /* synthetic */ kfl mo2657a(kfa kfa) {
        while (true) {
            int a = kfa.m20282a();
            switch (a) {
                case 0:
                    break;
                case 26:
                    this.f22806d = kfa.m20295g();
                    continue;
                case 34:
                    this.f22811i = kfa.m20296h();
                    continue;
                case 50:
                    if (this.f22803a == null) {
                        this.f22803a = new kyz();
                    }
                    kfa.m20284a(this.f22803a);
                    continue;
                case 58:
                    this.f22807e = kfa.m20295g();
                    continue;
                case 66:
                    this.f22813k = kfa.m20296h();
                    continue;
                case 82:
                    if (this.f22804b == null) {
                        this.f22804b = new kyq();
                    }
                    kfa.m20284a(this.f22804b);
                    continue;
                case 90:
                    this.f22812j = kfa.m20295g();
                    continue;
                case 114:
                    if (this.f22808f == null) {
                        this.f22808f = new kyo();
                    }
                    kfa.m20284a(this.f22808f);
                    continue;
                case 130:
                    if (this.f22809g == null) {
                        this.f22809g = new kyx();
                    }
                    kfa.m20284a(this.f22809g);
                    continue;
                case 138:
                    this.f22814l = kfa.m20295g();
                    continue;
                case 146:
                    if (this.f22805c == null) {
                        this.f22805c = new kxb();
                    }
                    kfa.m20284a(this.f22805c);
                    continue;
                case 152:
                    a = kfa.m20297i();
                    switch (a) {
                        case 0:
                        case 1:
                        case 2:
                        case 3:
                            this.f22810h = a;
                            break;
                        default:
                            continue;
                    }
                case 160:
                    this.f22815m = kfa.m20294f();
                    continue;
                default:
                    if (!super.m15755a(kfa, a)) {
                        break;
                    }
                    continue;
            }
            return this;
        }
    }
}
  • API KEY: AIzaSyAinVAlX3P0WtY-20Qga1knUxQJVMK9ER0

Endpoints (from another source, archived)

Comment:

  • The RequestBody is displayed as raw data. So propably not readable
  • As I have no idea if the Google API key is per user or global It isn't in here.
  • Mitmproxy is currently not able to do all HTTP2.0 stuff thats why these are only the Requests.

Send

Text Messages

Usage: sending Text Messages

URL: PUT https://instantmessaging-pa.googleapis.com/google.internal.communications.instantmessaging.v1.IM/SendMessage HTTP/2.0

RequestHeaders:

:authority:            instantmessaging-pa.googleapis.com
user-agent:            FB/1/20018674 grpc-java-cronet/0.0
content-type:          application/grpc
te:                    trailers
x-client-data:         COzijQk=
x-goog-api-key:        GOOGLEAPIKEY_WOULD_BE_HERE
grpc-accept-encoding:  gzip
grpc-census-bin:
grpc-timeout:          599999m

RequestBody:

\x00\x00\x00\x00\x9d
\x15\x08\x01\x12
HERE_WOULD_BE_MY_PHONE_NUMBER\x1a\x02FB\x125
$4bd30ffb-3155-46bd-87cc-f2c447431efa\x10\x02(\x02b?\xa2\x06\x06\x08?J\x02\x08\x01\x1aM2.\x00V\xaa\xdbVz#\xa5}Q\xc9\xa4\xd9'.%\xd6.UI\xfcJ\xa9(\xfd\xe5\xe8-?\xfb=\xd6\xfe\xc5\xcb<\x0cN\xba=
p\xe7a\x98\x9c\x1e:?\x18\xf2\xeb\xc5?8\x04H\x01J\x10xW\x1d\xe5\x9b\xe9I\x81\x8cd\x93\x128\xd7-G

GetBotList

Usage: Unknown

URL: PUT https://instantmessaging-pa.googleapis.com/google.internal.communications.instantmessaging.v1.IM/GetBotList HTTP/2.0

RequestHeaders:

:authority:            instantmessaging-pa.googleapis.com
user-agent:            FB/1/20018674 grpc-java-cronet/0.0
content-type:          application/grpc
te:                    trailers
x-client-data:         COzijQk=
x-goog-api-key:        GOOGLEAPIKEY_WOULD_BE_HERE
grpc-accept-encoding:  gzip
grpc-census-bin:
grpc-timeout:          599999m

RequestBody:

\x00\x00\x00\x00\xe6
M2.\x00V\xaa\xdbVz#\xa5}Q\xc9\xa4\xd9'.%\xd6.UI\xfcJ\xa9(\xfd\xe5\xe8-?\xfb=\xd6\xfe\xc5\xcb<\x0cN\xba=p\xe7a\x98\x9c\x1e:?\x18\xf2\xeb\xc5?8\x04H\x01J\x10}\x05\xb9bLDB\x1d\xbc\x92\x8dvl\xcf.J\x1a\x94\x01
\x8b\x01ya29.CmLHA-RPH5vBrETnpbW1X7r3_Phq9ckhuvS4gzHvXtdlkDim8aoifYn7vrumNXZZlcHfLk_pe4ziBbpEpDGnWL2EJSp-or5mvueE-ZDzQ-_ARK95NUF49LY4uqlidhj7N6gR_w\x12\x04prod

Remove

Remove Text

Usage: Removing Text Messages

URL: PUT https://instantmessaging-pa.googleapis.com/google.internal.communications.instantmessaging.v1.IM/DeleteUserMessages HTTP/2.0

RequestHeaders:

:authority:            instantmessaging-pa.googleapis.com
user-agent:            FB/1/20018674 grpc-java-cronet/0.0
content-type:          application/grpc
te:                    trailers
x-client-data:         COzijQk=
x-goog-api-key:        GOOGLEAPIKEY_WOULD_BE_HERE
grpc-accept-encoding:  gzip
grpc-census-bin:
grpc-timeout:          599999m

RequestBody:

\x00\x00\x00\x00w
M2.\x00V\xaa\xdbVz#\xa5}Q\xc9\xa4\xd9'.%\xd6.UI\xfcJ\xa9(\xfd\xe5\xe8-?\xfb=\xd6\xfe\xc5\xcb<\x0cN\xba=p\xe7a\x98\x9c\x1e:?\x18\xf2\xeb\xc5?8\x04H\x01J\x10 \xbe\x97VN2H\xae\x95:\xf9\xea\xc4\x18\xa3b\x12&
$c4025afe-b725-48e3-a12a-70626e81abc6

Stickers

Usage: Propably get Stickers

URL: GET https://www.gstatic.com/allo/stickers/current_version HTTP/2.0

RequestHeaders:

:authority:         www.gstatic.com
user-agent:         com.google.android.apps.fireball/20018674 (Linux; U; Android 6.0.1; de_DE; A0001; Build/MOB31K; Cronet/56.0.2913.4)
accept-encoding:    gzip, deflate
if-modified-since:  Fri, 09 Dec 2016 13:45:00 GMT

curl 'https://instantmessaging-pa.googleapis.com/$rpc/google.internal.communications.instantmessaging.v1.IM/SendMessage' -H 'origin: https://allo.google.com' -H 'accept-encoding: gzip, deflate, br' -H 'accept-language: en-US,en;q=0.9' -H 'x-chrome-uma-enabled: 1' -H 'x-goog-api-key: AIzaSyDOlZnePKPpRI0QGA9l4GsfTyqq2_BKlbg' -H 'x-client-data: CI22yQEIpbbJAQisncoBCLadygEI/Z7KAQ==' -H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3213.3 Safari/537.36' -H 'content-type: application/x-protobuf; type=google.rpc.streambody' -H 'accept: /' -H 'referer: https://allo.google.com/web' -H 'authority: instantmessaging-pa.googleapis.com' -H 'dnt: 1' --data-binary $'\n\x14\x08\x01\x12\x0c+14089058132\x1a\x02FB\x12,\n$408ee7c2-fd99-48bb-96b1-bd7a3eb26489\x10\x0eb\x022\x00\x1aw\n$bb6ff77f-3fe1-4336-99ff-8f7fd6629327\x1a\x02FB2=\x00FM\xfa\xb3\xc9K2\x84\x96\xdeu3\x93\xe6\x8e\xfaD\\xf7g\xfcl\xb5\x7f\xdd\xd2\xf1\x96\x8a\xd9\x18D\x93\xd0\xf82\xecU /\x88\x7f\x04\xaeh\x94\x18\xaf\xd5\xbd=\n\xf3x\x84\x1bsI+y:\x0c\n\x02FB \x01(\x018\x04H\x06(\x80\x8e\xce\x1c' --compressed