diff --git a/cmdclient/console.py b/cmdclient/console.py
index 7bda4000fc..7678b5e352 100755
--- a/cmdclient/console.py
+++ b/cmdclient/console.py
@@ -60,7 +60,7 @@ class SynapseCmd(cmd.Cmd):
"complete_usernames": "on",
"send_delivery_receipts": "on"
}
- self.path_prefix = "/matrix/client/api/v1"
+ self.path_prefix = "/_matrix/client/api/v1"
self.event_stream_token = "END"
self.prompt = ">>> "
@@ -252,7 +252,7 @@ class SynapseCmd(cmd.Cmd):
@defer.inlineCallbacks
def _do_emailrequest(self, args):
- url = self._identityServerUrl()+"/matrix/identity/api/v1/validate/email/requestToken"
+ url = self._identityServerUrl()+"/_matrix/identity/api/v1/validate/email/requestToken"
json_res = yield self.http_client.do_request("POST", url, data=urllib.urlencode(args), jsonreq=False,
headers={'Content-Type': ['application/x-www-form-urlencoded']})
@@ -274,7 +274,7 @@ class SynapseCmd(cmd.Cmd):
@defer.inlineCallbacks
def _do_emailvalidate(self, args):
- url = self._identityServerUrl()+"/matrix/identity/api/v1/validate/email/submitToken"
+ url = self._identityServerUrl()+"/_matrix/identity/api/v1/validate/email/submitToken"
json_res = yield self.http_client.do_request("POST", url, data=urllib.urlencode(args), jsonreq=False,
headers={'Content-Type': ['application/x-www-form-urlencoded']})
@@ -294,7 +294,7 @@ class SynapseCmd(cmd.Cmd):
@defer.inlineCallbacks
def _do_3pidbind(self, args):
- url = self._identityServerUrl()+"/matrix/identity/api/v1/3pid/bind"
+ url = self._identityServerUrl()+"/_matrix/identity/api/v1/3pid/bind"
json_res = yield self.http_client.do_request("POST", url, data=urllib.urlencode(args), jsonreq=False,
headers={'Content-Type': ['application/x-www-form-urlencoded']})
@@ -360,14 +360,14 @@ class SynapseCmd(cmd.Cmd):
def _do_invite(self, roomid, userstring):
if (not userstring.startswith('@') and
self._is_on("complete_usernames")):
- url = self._identityServerUrl()+"/matrix/identity/api/v1/lookup"
+ url = self._identityServerUrl()+"/_matrix/identity/api/v1/lookup"
json_res = yield self.http_client.do_request("GET", url, qparams={'medium':'email','address':userstring})
mxid = None
if 'mxid' in json_res and 'signatures' in json_res:
- url = self._identityServerUrl()+"/matrix/identity/api/v1/pubkey/ed25519"
+ url = self._identityServerUrl()+"/_matrix/identity/api/v1/pubkey/ed25519"
pubKey = None
pubKeyObj = yield self.http_client.do_request("GET", url)
diff --git a/docs/client-server/howto.rst b/docs/client-server/howto.rst
index 9ef4cb5f78..3660c73d36 100644
--- a/docs/client-server/howto.rst
+++ b/docs/client-server/howto.rst
@@ -30,7 +30,7 @@ Registration
The aim of registration is to get a user ID and access token which you will need
when accessing other APIs::
- curl -XPOST -d '{"user_id":"example", "password":"wordpass"}' "http://localhost:8080/matrix/client/api/v1/register"
+ curl -XPOST -d '{"user_id":"example", "password":"wordpass"}' "http://localhost:8080/_matrix/client/api/v1/register"
{
"access_token": "QGV4YW1wbGU6bG9jYWxob3N0.AqdSzFmFYrLrTmteXc",
@@ -51,13 +51,13 @@ Login
-----
The aim when logging in is to get an access token for your existing user ID::
- curl -XGET "http://localhost:8080/matrix/client/api/v1/login"
+ curl -XGET "http://localhost:8080/_matrix/client/api/v1/login"
{
"type": "m.login.password"
}
- curl -XPOST -d '{"type":"m.login.password", "user":"example", "password":"wordpass"}' "http://localhost:8080/matrix/client/api/v1/login"
+ curl -XPOST -d '{"type":"m.login.password", "user":"example", "password":"wordpass"}' "http://localhost:8080/_matrix/client/api/v1/login"
{
"access_token": "QGV4YW1wbGU6bG9jYWxob3N0.vRDLTgxefmKWQEtgGd",
@@ -87,7 +87,7 @@ Creating a room
If you want to send a message to someone, you have to be in a room with them. To
create a room::
- curl -XPOST -d '{"room_alias_name":"tutorial"}' "http://localhost:8080/matrix/client/api/v1/rooms?access_token=QGV4YW1wbGU6bG9jYWxob3N0.vRDLTgxefmKWQEtgGd"
+ curl -XPOST -d '{"room_alias_name":"tutorial"}' "http://localhost:8080/_matrix/client/api/v1/rooms?access_token=QGV4YW1wbGU6bG9jYWxob3N0.vRDLTgxefmKWQEtgGd"
{
"room_alias": "#tutorial:localhost",
@@ -105,7 +105,7 @@ Sending messages
----------------
You can now send messages to this room::
- curl -XPUT -d '{"msgtype":"m.text", "body":"hello"}' "http://localhost:8080/matrix/client/api/v1/rooms/%21CvcvRuDYDzTOzfKKgh:localhost/messages/%40example%3Alocalhost/msgid1?access_token=QGV4YW1wbGU6bG9jYWxob3N0.vRDLTgxefmKWQEtgGd"
+ curl -XPUT -d '{"msgtype":"m.text", "body":"hello"}' "http://localhost:8080/_matrix/client/api/v1/rooms/%21CvcvRuDYDzTOzfKKgh:localhost/messages/%40example%3Alocalhost/msgid1?access_token=QGV4YW1wbGU6bG9jYWxob3N0.vRDLTgxefmKWQEtgGd"
NB: There are no limitations to the types of messages which can be exchanged.
The only requirement is that ``"msgtype"`` is specified.
@@ -127,7 +127,7 @@ Inviting a user to a room
-------------------------
You can directly invite a user to a room like so::
- curl -XPUT -d '{"membership":"invite"}' "http://localhost:8080/matrix/client/api/v1/rooms/%21CvcvRuDYDzTOzfKKgh:localhost/members/%40myfriend%3Alocalhost/state?access_token=QGV4YW1wbGU6bG9jYWxob3N0.vRDLTgxefmKWQEtgGd"
+ curl -XPUT -d '{"membership":"invite"}' "http://localhost:8080/_matrix/client/api/v1/rooms/%21CvcvRuDYDzTOzfKKgh:localhost/members/%40myfriend%3Alocalhost/state?access_token=QGV4YW1wbGU6bG9jYWxob3N0.vRDLTgxefmKWQEtgGd"
This informs ``@myfriend:localhost`` of the room ID
``!CvcvRuDYDzTOzfKKgh:localhost`` and allows them to join the room.
@@ -137,7 +137,7 @@ Joining a room via an invite
If you receive an invite, you can join the room by changing the membership to
join::
- curl -XPUT -d '{"membership":"join"}' "http://localhost:8080/matrix/client/api/v1/rooms/%21CvcvRuDYDzTOzfKKgh:localhost/members/%40myfriend%3Alocalhost/state?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK"
+ curl -XPUT -d '{"membership":"join"}' "http://localhost:8080/_matrix/client/api/v1/rooms/%21CvcvRuDYDzTOzfKKgh:localhost/members/%40myfriend%3Alocalhost/state?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK"
NB: Only the person invited (``@myfriend:localhost``) can change the membership
state to ``"join"``.
@@ -147,7 +147,7 @@ Joining a room via an alias
Alternatively, if you know the room alias for this room and the room config
allows it, you can directly join a room via the alias::
- curl -XPUT -d '{}' "http://localhost:8080/matrix/client/api/v1/join/%23tutorial%3Alocalhost?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK"
+ curl -XPUT -d '{}' "http://localhost:8080/_matrix/client/api/v1/join/%23tutorial%3Alocalhost?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK"
{
"room_id": "!CvcvRuDYDzTOzfKKgh:localhost"
@@ -173,7 +173,7 @@ Getting all state
If the client doesn't know any information on the rooms the user is
invited/joined on, they can get all the user's state for all rooms::
- curl -XGET "http://localhost:8080/matrix/client/api/v1/im/sync?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK"
+ curl -XGET "http://localhost:8080/_matrix/client/api/v1/im/sync?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK"
[
{
@@ -236,7 +236,7 @@ all of the messages and feedback for these rooms. This can be a LOT of data. You
may just want the most recent message for each room. This can be achieved by
applying pagination stream parameters to this request::
- curl -XGET "http://localhost:8080/matrix/client/api/v1/im/sync?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK&from=END&to=START&limit=1"
+ curl -XGET "http://localhost:8080/_matrix/client/api/v1/im/sync?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK&from=END&to=START&limit=1"
[
{
@@ -271,7 +271,7 @@ Getting live state
Once you know which rooms the client has previously interacted with, you need to
listen for incoming events. This can be done like so::
- curl -XGET "http://localhost:8080/matrix/client/api/v1/events?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK&from=END"
+ curl -XGET "http://localhost:8080/_matrix/client/api/v1/events?access_token=QG15ZnJpZW5kOmxvY2FsaG9zdA...XKuGdVsovHmwMyDDvK&from=END"
{
"chunk": [],
diff --git a/docs/client-server/specification.rst b/docs/client-server/specification.rst
index 4c1a3d4456..ee8bb5c420 100644
--- a/docs/client-server/specification.rst
+++ b/docs/client-server/specification.rst
@@ -306,11 +306,11 @@ POST requests MUST be submitted as application/json.
All paths MUST be namespaced by the version of the API being used. This should
be:
-/matrix/client/api/v1
+/_matrix/client/api/v1
All REST paths in this section MUST be prefixed with this. E.g.
REST Path: /rooms/$room_id
- Absolute Path: /matrix/client/api/v1/rooms/$room_id
+ Absolute Path: /_matrix/client/api/v1/rooms/$room_id
Registration
============
diff --git a/docs/client-server/swagger_matrix/directory b/docs/client-server/swagger_matrix/directory
index 3f3bef9c11..98109a0fbc 100644
--- a/docs/client-server/swagger_matrix/directory
+++ b/docs/client-server/swagger_matrix/directory
@@ -1,7 +1,7 @@
{
"apiVersion": "1.0.0",
"swaggerVersion": "1.2",
- "basePath": "http://localhost:8080/matrix/client/api/v1",
+ "basePath": "http://localhost:8080/_matrix/client/api/v1",
"resourcePath": "/directory",
"produces": [
"application/json"
diff --git a/docs/client-server/swagger_matrix/events b/docs/client-server/swagger_matrix/events
index ca69d34db5..d22c68cc78 100644
--- a/docs/client-server/swagger_matrix/events
+++ b/docs/client-server/swagger_matrix/events
@@ -1,7 +1,7 @@
{
"apiVersion": "1.0.0",
"swaggerVersion": "1.2",
- "basePath": "http://localhost:8080/matrix/client/api/v1",
+ "basePath": "http://localhost:8080/_matrix/client/api/v1",
"resourcePath": "/events",
"produces": [
"application/json"
diff --git a/docs/client-server/swagger_matrix/login b/docs/client-server/swagger_matrix/login
index 4410d3c887..8cc598b3c1 100644
--- a/docs/client-server/swagger_matrix/login
+++ b/docs/client-server/swagger_matrix/login
@@ -40,7 +40,7 @@
"path": "/login"
}
],
- "basePath": "http://localhost:8080/matrix/client/api/v1",
+ "basePath": "http://localhost:8080/_matrix/client/api/v1",
"consumes": [
"application/json"
],
diff --git a/docs/client-server/swagger_matrix/presence b/docs/client-server/swagger_matrix/presence
index 1b4c7323aa..d52ce2164a 100644
--- a/docs/client-server/swagger_matrix/presence
+++ b/docs/client-server/swagger_matrix/presence
@@ -1,7 +1,7 @@
{
"apiVersion": "1.0.0",
"swaggerVersion": "1.2",
- "basePath": "http://localhost:8080/matrix/client/api/v1",
+ "basePath": "http://localhost:8080/_matrix/client/api/v1",
"resourcePath": "/presence",
"produces": [
"application/json"
diff --git a/docs/client-server/swagger_matrix/profile b/docs/client-server/swagger_matrix/profile
index 1ebde62e20..188259fa3d 100644
--- a/docs/client-server/swagger_matrix/profile
+++ b/docs/client-server/swagger_matrix/profile
@@ -1,7 +1,7 @@
{
"apiVersion": "1.0.0",
"swaggerVersion": "1.2",
- "basePath": "http://localhost:8080/matrix/client/api/v1",
+ "basePath": "http://localhost:8080/_matrix/client/api/v1",
"resourcePath": "/profile",
"produces": [
"application/json"
diff --git a/docs/client-server/swagger_matrix/registration b/docs/client-server/swagger_matrix/registration
index ccd542d11e..2048aec1d2 100644
--- a/docs/client-server/swagger_matrix/registration
+++ b/docs/client-server/swagger_matrix/registration
@@ -37,7 +37,7 @@
"path": "/register"
}
],
- "basePath": "http://localhost:8080/matrix/client/api/v1",
+ "basePath": "http://localhost:8080/_matrix/client/api/v1",
"consumes": [
"application/json"
],
diff --git a/docs/client-server/swagger_matrix/rooms b/docs/client-server/swagger_matrix/rooms
index 1c32d135aa..7d3341f097 100644
--- a/docs/client-server/swagger_matrix/rooms
+++ b/docs/client-server/swagger_matrix/rooms
@@ -1,7 +1,7 @@
{
"apiVersion": "1.0.0",
"swaggerVersion": "1.2",
- "basePath": "http://localhost:8080/matrix/client/api/v1",
+ "basePath": "http://localhost:8080/_matrix/client/api/v1",
"resourcePath": "/rooms",
"produces": [
"application/json"
diff --git a/docs/server-server/specification.rst b/docs/server-server/specification.rst
index a9ab9bff66..17cffafdd4 100644
--- a/docs/server-server/specification.rst
+++ b/docs/server-server/specification.rst
@@ -155,7 +155,7 @@ Protocol URLs
All these URLs are namespaced within a prefix of
- /matrix/federation/v1/...
+ /_matrix/federation/v1/...
For active pushing of messages representing live activity "as it happens":
diff --git a/graph/graph.py b/graph/graph.py
index 220f5eb1d5..ac06d979e1 100644
--- a/graph/graph.py
+++ b/graph/graph.py
@@ -120,7 +120,7 @@ def make_graph(pdus, room, filename_prefix):
def get_pdus(host, room):
transaction = json.loads(
urllib2.urlopen(
- "http://%s/matrix/federation/v1/context/%s/" % (host, room)
+ "http://%s/_matrix/federation/v1/context/%s/" % (host, room)
).read()
)
diff --git a/jsfiddles/create_room_send_msg/demo.js b/jsfiddles/create_room_send_msg/demo.js
index db2ae2d606..61044da743 100644
--- a/jsfiddles/create_room_send_msg/demo.js
+++ b/jsfiddles/create_room_send_msg/demo.js
@@ -10,7 +10,7 @@ $('.login').live('click', function() {
var user = $("#userLogin").val();
var password = $("#passwordLogin").val();
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/login",
+ url: "http://localhost:8080/_matrix/client/api/v1/login",
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ user: user, password: password, type: "m.login.password" }),
@@ -25,7 +25,7 @@ $('.login').live('click', function() {
});
var getCurrentRoomList = function() {
- var url = "http://localhost:8080/matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
+ var url = "http://localhost:8080/_matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
$.getJSON(url, function(data) {
var rooms = data.rooms;
for (var i=0; i<rooms.length; ++i) {
@@ -44,7 +44,7 @@ $('.createRoom').live('click', function() {
data.room_alias_name = roomAlias;
}
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/createRoom?access_token="+accountInfo.access_token,
+ url: "http://localhost:8080/_matrix/client/api/v1/createRoom?access_token="+accountInfo.access_token,
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data),
@@ -79,7 +79,7 @@ $('.sendMessage').live('click', function() {
return;
}
- var url = "http://localhost:8080/matrix/client/api/v1/rooms/$roomid/send/m.room.message?access_token=$token";
+ var url = "http://localhost:8080/_matrix/client/api/v1/rooms/$roomid/send/m.room.message?access_token=$token";
url = url.replace("$token", accountInfo.access_token);
url = url.replace("$roomid", encodeURIComponent(roomId));
diff --git a/jsfiddles/event_stream/demo.js b/jsfiddles/event_stream/demo.js
index 3f132cd98e..997d1a2240 100644
--- a/jsfiddles/event_stream/demo.js
+++ b/jsfiddles/event_stream/demo.js
@@ -7,7 +7,7 @@ var eventStreamInfo = {
var roomInfo = [];
var longpollEventStream = function() {
- var url = "http://localhost:8080/matrix/client/api/v1/events?access_token=$token&from=$from";
+ var url = "http://localhost:8080/_matrix/client/api/v1/events?access_token=$token&from=$from";
url = url.replace("$token", accountInfo.access_token);
url = url.replace("$from", eventStreamInfo.from);
@@ -48,7 +48,7 @@ $('.login').live('click', function() {
var user = $("#userLogin").val();
var password = $("#passwordLogin").val();
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/login",
+ url: "http://localhost:8080/_matrix/client/api/v1/login",
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ user: user, password: password, type: "m.login.password" }),
@@ -65,7 +65,7 @@ $('.login').live('click', function() {
var getCurrentRoomList = function() {
$("#roomId").val("");
- var url = "http://localhost:8080/matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
+ var url = "http://localhost:8080/_matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
$.getJSON(url, function(data) {
var rooms = data.rooms;
for (var i=0; i<rooms.length; ++i) {
@@ -98,7 +98,7 @@ var sendMessage = function(roomId) {
return;
}
- var url = "http://localhost:8080/matrix/client/api/v1/rooms/$roomid/send/m.room.message?access_token=$token";
+ var url = "http://localhost:8080/_matrix/client/api/v1/rooms/$roomid/send/m.room.message?access_token=$token";
url = url.replace("$token", accountInfo.access_token);
url = url.replace("$roomid", encodeURIComponent(roomId));
diff --git a/jsfiddles/example_app/demo.js b/jsfiddles/example_app/demo.js
index f5e08b326a..958232047f 100644
--- a/jsfiddles/example_app/demo.js
+++ b/jsfiddles/example_app/demo.js
@@ -10,7 +10,7 @@ var viewingRoomId;
// ************** Event Streaming **************
var longpollEventStream = function() {
- var url = "http://localhost:8080/matrix/client/api/v1/events?access_token=$token&from=$from";
+ var url = "http://localhost:8080/_matrix/client/api/v1/events?access_token=$token&from=$from";
url = url.replace("$token", accountInfo.access_token);
url = url.replace("$from", eventStreamInfo.from);
@@ -89,7 +89,7 @@ $('.login').live('click', function() {
var user = $("#userLogin").val();
var password = $("#passwordLogin").val();
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/login",
+ url: "http://localhost:8080/_matrix/client/api/v1/login",
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ user: user, password: password, type: "m.login.password" }),
@@ -107,7 +107,7 @@ $('.register').live('click', function() {
var user = $("#userReg").val();
var password = $("#passwordReg").val();
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/register",
+ url: "http://localhost:8080/_matrix/client/api/v1/register",
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ user_id: user, password: password }),
@@ -134,7 +134,7 @@ $('.createRoom').live('click', function() {
data.room_alias_name = roomAlias;
}
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/createRoom?access_token="+accountInfo.access_token,
+ url: "http://localhost:8080/_matrix/client/api/v1/createRoom?access_token="+accountInfo.access_token,
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data),
@@ -155,7 +155,7 @@ $('.createRoom').live('click', function() {
// ************** Getting current state **************
var getCurrentRoomList = function() {
- var url = "http://localhost:8080/matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
+ var url = "http://localhost:8080/_matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
$.getJSON(url, function(data) {
var rooms = data.rooms;
for (var i=0; i<rooms.length; ++i) {
@@ -181,7 +181,7 @@ var loadRoomContent = function(roomId) {
var getMessages = function(roomId) {
$("#messages").empty();
- var url = "http://localhost:8080/matrix/client/api/v1/rooms/" +
+ var url = "http://localhost:8080/_matrix/client/api/v1/rooms/" +
encodeURIComponent(roomId) + "/messages?access_token=" + accountInfo.access_token + "&from=END&dir=b&limit=10";
$.getJSON(url, function(data) {
for (var i=data.chunk.length-1; i>=0; --i) {
@@ -193,7 +193,7 @@ var getMessages = function(roomId) {
var getMemberList = function(roomId) {
$("#members").empty();
memberInfo = [];
- var url = "http://localhost:8080/matrix/client/api/v1/rooms/" +
+ var url = "http://localhost:8080/_matrix/client/api/v1/rooms/" +
encodeURIComponent(roomId) + "/members?access_token=" + accountInfo.access_token;
$.getJSON(url, function(data) {
for (var i=0; i<data.chunk.length; ++i) {
@@ -216,7 +216,7 @@ $('.sendMessage').live('click', function() {
var sendMessage = function(roomId, body) {
var msgId = $.now();
- var url = "http://localhost:8080/matrix/client/api/v1/rooms/$roomid/send/m.room.message?access_token=$token";
+ var url = "http://localhost:8080/_matrix/client/api/v1/rooms/$roomid/send/m.room.message?access_token=$token";
url = url.replace("$token", accountInfo.access_token);
url = url.replace("$roomid", encodeURIComponent(roomId));
@@ -262,7 +262,7 @@ var setRooms = function(roomList) {
var membership = $(this).find('td:eq(1)').text();
if (membership !== "join") {
console.log("Joining room " + roomId);
- var url = "http://localhost:8080/matrix/client/api/v1/rooms/$roomid/join?access_token=$token";
+ var url = "http://localhost:8080/_matrix/client/api/v1/rooms/$roomid/join?access_token=$token";
url = url.replace("$token", accountInfo.access_token);
url = url.replace("$roomid", encodeURIComponent(roomId));
$.ajax({
diff --git a/jsfiddles/register_login/demo.js b/jsfiddles/register_login/demo.js
index 270a96786c..1e68cb91bd 100644
--- a/jsfiddles/register_login/demo.js
+++ b/jsfiddles/register_login/demo.js
@@ -11,7 +11,7 @@ $('.register').live('click', function() {
var user = $("#user").val();
var password = $("#password").val();
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/register",
+ url: "http://localhost:8080/_matrix/client/api/v1/register",
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ user_id: user, password: password }),
@@ -27,7 +27,7 @@ $('.register').live('click', function() {
var login = function(user, password) {
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/login",
+ url: "http://localhost:8080/_matrix/client/api/v1/login",
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ user: user, password: password, type: "m.login.password" }),
@@ -44,7 +44,7 @@ var login = function(user, password) {
$('.login').live('click', function() {
var user = $("#userLogin").val();
var password = $("#passwordLogin").val();
- $.getJSON("http://localhost:8080/matrix/client/api/v1/login", function(data) {
+ $.getJSON("http://localhost:8080/_matrix/client/api/v1/login", function(data) {
if (data.flows[0].type !== "m.login.password") {
alert("I don't know how to login with this type: " + data.type);
return;
@@ -60,7 +60,7 @@ $('.logout').live('click', function() {
});
$('.testToken').live('click', function() {
- var url = "http://localhost:8080/matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
+ var url = "http://localhost:8080/_matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
$.getJSON(url, function(data) {
$("#imSyncText").text(JSON.stringify(data, undefined, 2));
}).fail(function(err) {
diff --git a/jsfiddles/room_memberships/demo.js b/jsfiddles/room_memberships/demo.js
index 91cc96ab6f..7e499049ab 100644
--- a/jsfiddles/room_memberships/demo.js
+++ b/jsfiddles/room_memberships/demo.js
@@ -18,7 +18,7 @@ $('.login').live('click', function() {
var user = $("#userLogin").val();
var password = $("#passwordLogin").val();
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/login",
+ url: "http://localhost:8080/_matrix/client/api/v1/login",
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ user: user, password: password, type: "m.login.password" }),
@@ -39,7 +39,7 @@ var getCurrentRoomList = function() {
// solution but that is out of scope of this fiddle.
$("#rooms").find("tr:gt(0)").remove();
- var url = "http://localhost:8080/matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
+ var url = "http://localhost:8080/_matrix/client/api/v1/initialSync?access_token=" + accountInfo.access_token + "&limit=1";
$.getJSON(url, function(data) {
var rooms = data.rooms;
for (var i=0; i<rooms.length; ++i) {
@@ -53,7 +53,7 @@ var getCurrentRoomList = function() {
$('.createRoom').live('click', function() {
var data = {};
$.ajax({
- url: "http://localhost:8080/matrix/client/api/v1/createRoom?access_token="+accountInfo.access_token,
+ url: "http://localhost:8080/_matrix/client/api/v1/createRoom?access_token="+accountInfo.access_token,
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data),
@@ -87,7 +87,7 @@ $('.changeMembership').live('click', function() {
return;
}
- var url = "http://localhost:8080/matrix/client/api/v1/rooms/$roomid/$membership?access_token=$token";
+ var url = "http://localhost:8080/_matrix/client/api/v1/rooms/$roomid/$membership?access_token=$token";
url = url.replace("$token", accountInfo.access_token);
url = url.replace("$roomid", encodeURIComponent(roomId));
url = url.replace("$membership", membership);
@@ -117,7 +117,7 @@ $('.changeMembership').live('click', function() {
$('.joinAlias').live('click', function() {
var roomAlias = $("#roomAlias").val();
- var url = "http://localhost:8080/matrix/client/api/v1/join/$roomalias?access_token=$token";
+ var url = "http://localhost:8080/_matrix/client/api/v1/join/$roomalias?access_token=$token";
url = url.replace("$token", accountInfo.access_token);
url = url.replace("$roomalias", encodeURIComponent(roomAlias));
$.ajax({
diff --git a/synapse/api/urls.py b/synapse/api/urls.py
index 05ca000787..3d0b5de965 100644
--- a/synapse/api/urls.py
+++ b/synapse/api/urls.py
@@ -15,7 +15,7 @@
"""Contains the URL paths to prefix various aspects of the server with. """
-CLIENT_PREFIX = "/matrix/client/api/v1"
-FEDERATION_PREFIX = "/matrix/federation/v1"
-WEB_CLIENT_PREFIX = "/matrix/client"
-CONTENT_REPO_PREFIX = "/matrix/content"
\ No newline at end of file
+CLIENT_PREFIX = "/_matrix/client/api/v1"
+FEDERATION_PREFIX = "/_matrix/federation/v1"
+WEB_CLIENT_PREFIX = "/_matrix/client"
+CONTENT_REPO_PREFIX = "/_matrix/content"
\ No newline at end of file
diff --git a/tests/federation/test_federation.py b/tests/federation/test_federation.py
index 938b57bec9..51308ca358 100644
--- a/tests/federation/test_federation.py
+++ b/tests/federation/test_federation.py
@@ -87,7 +87,7 @@ class FederationTestCase(unittest.TestCase):
# Empty context initially
(code, response) = yield self.mock_resource.trigger("GET",
- "/matrix/federation/v1/state/my-context/", None)
+ "/_matrix/federation/v1/state/my-context/", None)
self.assertEquals(200, code)
self.assertFalse(response["pdus"])
@@ -112,7 +112,7 @@ class FederationTestCase(unittest.TestCase):
)
(code, response) = yield self.mock_resource.trigger("GET",
- "/matrix/federation/v1/state/my-context/", None)
+ "/_matrix/federation/v1/state/my-context/", None)
self.assertEquals(200, code)
self.assertEquals(1, len(response["pdus"]))
@@ -123,7 +123,7 @@ class FederationTestCase(unittest.TestCase):
)
(code, response) = yield self.mock_resource.trigger("GET",
- "/matrix/federation/v1/pdu/red/abc123def456/", None)
+ "/_matrix/federation/v1/pdu/red/abc123def456/", None)
self.assertEquals(404, code)
# Now insert such a PDU
@@ -142,7 +142,7 @@ class FederationTestCase(unittest.TestCase):
)
(code, response) = yield self.mock_resource.trigger("GET",
- "/matrix/federation/v1/pdu/red/abc123def456/", None)
+ "/_matrix/federation/v1/pdu/red/abc123def456/", None)
self.assertEquals(200, code)
self.assertEquals(1, len(response["pdus"]))
self.assertEquals("m.text", response["pdus"][0]["pdu_type"])
@@ -168,7 +168,7 @@ class FederationTestCase(unittest.TestCase):
self.mock_http_client.put_json.assert_called_with(
"remote",
- path="/matrix/federation/v1/send/1000000/",
+ path="/_matrix/federation/v1/send/1000000/",
data={
"ts": 1000000,
"origin": "test",
@@ -203,7 +203,7 @@ class FederationTestCase(unittest.TestCase):
# MockClock ensures we can guess these timestamps
self.mock_http_client.put_json.assert_called_with(
"remote",
- path="/matrix/federation/v1/send/1000000/",
+ path="/_matrix/federation/v1/send/1000000/",
data={
"origin": "test",
"ts": 1000000,
@@ -226,7 +226,7 @@ class FederationTestCase(unittest.TestCase):
self.federation.register_edu_handler("m.test", recv_observer)
yield self.mock_resource.trigger("PUT",
- "/matrix/federation/v1/send/1001000/",
+ "/_matrix/federation/v1/send/1001000/",
"""{
"origin": "remote",
"ts": 1001000,
@@ -261,7 +261,7 @@ class FederationTestCase(unittest.TestCase):
self.mock_http_client.get_json.assert_called_with(
destination="remote",
- path="/matrix/federation/v1/query/a-question",
+ path="/_matrix/federation/v1/query/a-question",
args={"one": "1", "two": "2"}
)
@@ -273,7 +273,7 @@ class FederationTestCase(unittest.TestCase):
self.federation.register_query_handler("a-question", recv_handler)
code, response = yield self.mock_resource.trigger("GET",
- "/matrix/federation/v1/query/a-question?three=3&four=4", None)
+ "/_matrix/federation/v1/query/a-question?three=3&four=4", None)
self.assertEquals(200, code)
self.assertEquals({"another": "response"}, response)
diff --git a/tests/handlers/test_presence.py b/tests/handlers/test_presence.py
index 0a176bdd44..451e1eaa22 100644
--- a/tests/handlers/test_presence.py
+++ b/tests/handlers/test_presence.py
@@ -314,7 +314,7 @@ class PresenceInvitesTestCase(unittest.TestCase):
put_json = self.mock_http_client.put_json
put_json.expect_call_and_return(
call("elsewhere",
- path="/matrix/federation/v1/send/1000000/",
+ path="/_matrix/federation/v1/send/1000000/",
data=_expect_edu("elsewhere", "m.presence_invite",
content={
"observer_user": "@apple:test",
@@ -340,7 +340,7 @@ class PresenceInvitesTestCase(unittest.TestCase):
put_json = self.mock_http_client.put_json
put_json.expect_call_and_return(
call("elsewhere",
- path="/matrix/federation/v1/send/1000000/",
+ path="/_matrix/federation/v1/send/1000000/",
data=_expect_edu("elsewhere", "m.presence_accept",
content={
"observer_user": "@cabbage:elsewhere",
@@ -352,7 +352,7 @@ class PresenceInvitesTestCase(unittest.TestCase):
)
yield self.mock_federation_resource.trigger("PUT",
- "/matrix/federation/v1/send/1000000/",
+ "/_matrix/federation/v1/send/1000000/",
_make_edu_json("elsewhere", "m.presence_invite",
content={
"observer_user": "@cabbage:elsewhere",
@@ -371,7 +371,7 @@ class PresenceInvitesTestCase(unittest.TestCase):
put_json = self.mock_http_client.put_json
put_json.expect_call_and_return(
call("elsewhere",
- path="/matrix/federation/v1/send/1000000/",
+ path="/_matrix/federation/v1/send/1000000/",
data=_expect_edu("elsewhere", "m.presence_deny",
content={
"observer_user": "@cabbage:elsewhere",
@@ -383,7 +383,7 @@ class PresenceInvitesTestCase(unittest.TestCase):
)
yield self.mock_federation_resource.trigger("PUT",
- "/matrix/federation/v1/send/1000000/",
+ "/_matrix/federation/v1/send/1000000/",
_make_edu_json("elsewhere", "m.presence_invite",
content={
"observer_user": "@cabbage:elsewhere",
@@ -397,7 +397,7 @@ class PresenceInvitesTestCase(unittest.TestCase):
@defer.inlineCallbacks
def test_accepted_remote(self):
yield self.mock_federation_resource.trigger("PUT",
- "/matrix/federation/v1/send/1000000/",
+ "/_matrix/federation/v1/send/1000000/",
_make_edu_json("elsewhere", "m.presence_accept",
content={
"observer_user": "@apple:test",
@@ -415,7 +415,7 @@ class PresenceInvitesTestCase(unittest.TestCase):
@defer.inlineCallbacks
def test_denied_remote(self):
yield self.mock_federation_resource.trigger("PUT",
- "/matrix/federation/v1/send/1000000/",
+ "/_matrix/federation/v1/send/1000000/",
_make_edu_json("elsewhere", "m.presence_deny",
content={
"observer_user": "@apple:test",
@@ -720,7 +720,7 @@ class PresencePushTestCase(unittest.TestCase):
self.assertEquals(self.event_source.get_current_key(), 0)
yield self.mock_federation_resource.trigger("PUT",
- "/matrix/federation/v1/send/1000000/",
+ "/_matrix/federation/v1/send/1000000/",
_make_edu_json("elsewhere", "m.presence",
content={
"push": [
@@ -836,7 +836,7 @@ class PresencePushTestCase(unittest.TestCase):
put_json.expect_call_and_return(
call("remote",
- path="/matrix/federation/v1/send/1000002/",
+ path="/_matrix/federation/v1/send/1000002/",
data=_expect_edu("remote", "m.presence",
content={
"push": [
@@ -1130,7 +1130,7 @@ class PresencePollingTestCase(unittest.TestCase):
put_json = self.mock_http_client.put_json
put_json.expect_call_and_return(
call("remote",
- path="/matrix/federation/v1/send/1000000/",
+ path="/_matrix/federation/v1/send/1000000/",
data=_expect_edu("remote", "m.presence",
content={
"push": [
@@ -1145,7 +1145,7 @@ class PresencePollingTestCase(unittest.TestCase):
)
yield self.mock_federation_resource.trigger("PUT",
- "/matrix/federation/v1/send/1000000/",
+ "/_matrix/federation/v1/send/1000000/",
_make_edu_json("remote", "m.presence",
content={
"poll": [ "@banana:test" ],
@@ -1159,7 +1159,7 @@ class PresencePollingTestCase(unittest.TestCase):
self.assertTrue(self.u_banana in self.handler._remote_sendmap)
yield self.mock_federation_resource.trigger("PUT",
- "/matrix/federation/v1/send/1000001/",
+ "/_matrix/federation/v1/send/1000001/",
_make_edu_json("remote", "m.presence",
content={
"unpoll": [ "@banana:test" ],
diff --git a/tests/handlers/test_typing.py b/tests/handlers/test_typing.py
index 300a6e340a..c3c98074cc 100644
--- a/tests/handlers/test_typing.py
+++ b/tests/handlers/test_typing.py
@@ -166,7 +166,7 @@ class TypingNotificationsTestCase(unittest.TestCase):
put_json = self.mock_http_client.put_json
put_json.expect_call_and_return(
call("farm",
- path="/matrix/federation/v1/send/1000000/",
+ path="/_matrix/federation/v1/send/1000000/",
data=_expect_edu("farm", "m.typing",
content={
"room_id": self.room_id,
@@ -192,7 +192,7 @@ class TypingNotificationsTestCase(unittest.TestCase):
self.room_members = [self.u_apple, self.u_onion]
yield self.mock_federation_resource.trigger("PUT",
- "/matrix/federation/v1/send/1000000/",
+ "/_matrix/federation/v1/send/1000000/",
_make_edu_json("farm", "m.typing",
content={
"room_id": self.room_id,
@@ -216,7 +216,7 @@ class TypingNotificationsTestCase(unittest.TestCase):
put_json = self.mock_http_client.put_json
put_json.expect_call_and_return(
call("farm",
- path="/matrix/federation/v1/send/1000000/",
+ path="/_matrix/federation/v1/send/1000000/",
data=_expect_edu("farm", "m.typing",
content={
"room_id": self.room_id,
diff --git a/tests/rest/test_events.py b/tests/rest/test_events.py
index 3099a24e8c..1d1336d12d 100644
--- a/tests/rest/test_events.py
+++ b/tests/rest/test_events.py
@@ -36,7 +36,7 @@ from mock import Mock
logging.getLogger().addHandler(logging.NullHandler())
-PATH_PREFIX = "/matrix/client/api/v1"
+PATH_PREFIX = "/_matrix/client/api/v1"
class EventStreamPaginationApiTestCase(unittest.TestCase):
diff --git a/tests/rest/test_presence.py b/tests/rest/test_presence.py
index 6631b77973..61692f02c2 100644
--- a/tests/rest/test_presence.py
+++ b/tests/rest/test_presence.py
@@ -37,7 +37,7 @@ ONLINE = PresenceState.ONLINE
myid = "@apple:test"
-PATH_PREFIX = "/matrix/client/api/v1"
+PATH_PREFIX = "/_matrix/client/api/v1"
class JustPresenceHandlers(object):
diff --git a/tests/rest/test_profile.py b/tests/rest/test_profile.py
index 9bd8dc9783..24456769c7 100644
--- a/tests/rest/test_profile.py
+++ b/tests/rest/test_profile.py
@@ -26,7 +26,7 @@ from synapse.api.errors import SynapseError, AuthError
from synapse.server import HomeServer
myid = "@1234ABCD:test"
-PATH_PREFIX = "/matrix/client/api/v1"
+PATH_PREFIX = "/_matrix/client/api/v1"
class ProfileTestCase(unittest.TestCase):
""" Tests profile management. """
diff --git a/tests/rest/test_rooms.py b/tests/rest/test_rooms.py
index 914dc28f53..b432cf254e 100644
--- a/tests/rest/test_rooms.py
+++ b/tests/rest/test_rooms.py
@@ -32,7 +32,7 @@ from .utils import RestTestCase
from mock import Mock
-PATH_PREFIX = "/matrix/client/api/v1"
+PATH_PREFIX = "/_matrix/client/api/v1"
class RoomPermissionsTestCase(RestTestCase):
diff --git a/webclient/components/fileUpload/file-upload-service.js b/webclient/components/fileUpload/file-upload-service.js
index 5f01478fd1..699a3cbffc 100644
--- a/webclient/components/fileUpload/file-upload-service.js
+++ b/webclient/components/fileUpload/file-upload-service.js
@@ -30,7 +30,7 @@ angular.module('mFileUpload', ['matrixService', 'mUtilities'])
*/
this.uploadFile = function(file) {
var deferred = $q.defer();
- console.log("Uploading " + file.name + "... to /matrix/content");
+ console.log("Uploading " + file.name + "... to /_matrix/content");
matrixService.uploadContent(file).then(
function(response) {
var content_url = response.data.content_token;
diff --git a/webclient/components/matrix/matrix-service.js b/webclient/components/matrix/matrix-service.js
index 746442c280..d509c20b0f 100644
--- a/webclient/components/matrix/matrix-service.js
+++ b/webclient/components/matrix/matrix-service.js
@@ -38,7 +38,7 @@ angular.module('matrixService', [])
// Current version of permanent storage
var configVersion = 0;
- var prefixPath = "/matrix/client/api/v1";
+ var prefixPath = "/_matrix/client/api/v1";
var MAPPING_PREFIX = "alias_for_";
var doRequest = function(method, path, params, data, $httpParams) {
@@ -168,7 +168,7 @@ angular.module('matrixService', [])
// Retrieves the room ID corresponding to a room alias
resolveRoomAlias:function(room_alias) {
- var path = "/matrix/client/api/v1/directory/room/$room_alias";
+ var path = "/_matrix/client/api/v1/directory/room/$room_alias";
room_alias = encodeURIComponent(room_alias);
path = path.replace("$room_alias", room_alias);
@@ -308,7 +308,7 @@ angular.module('matrixService', [])
// hit the Identity Server for a 3PID request.
linkEmail: function(email, clientSecret, sendAttempt) {
- var path = "/matrix/identity/api/v1/validate/email/requestToken"
+ var path = "/_matrix/identity/api/v1/validate/email/requestToken"
var data = "clientSecret="+clientSecret+"&email=" + encodeURIComponent(email)+"&sendAttempt="+sendAttempt;
var headers = {};
headers["Content-Type"] = "application/x-www-form-urlencoded";
@@ -316,7 +316,7 @@ angular.module('matrixService', [])
},
authEmail: function(clientSecret, tokenId, code) {
- var path = "/matrix/identity/api/v1/validate/email/submitToken";
+ var path = "/_matrix/identity/api/v1/validate/email/submitToken";
var data = "token="+code+"&sid="+tokenId+"&clientSecret="+clientSecret;
var headers = {};
headers["Content-Type"] = "application/x-www-form-urlencoded";
@@ -324,7 +324,7 @@ angular.module('matrixService', [])
},
bindEmail: function(userId, tokenId, clientSecret) {
- var path = "/matrix/identity/api/v1/3pid/bind";
+ var path = "/_matrix/identity/api/v1/3pid/bind";
var data = "mxid="+encodeURIComponent(userId)+"&sid="+tokenId+"&clientSecret="+clientSecret;
var headers = {};
headers["Content-Type"] = "application/x-www-form-urlencoded";
@@ -332,7 +332,7 @@ angular.module('matrixService', [])
},
uploadContent: function(file) {
- var path = "/matrix/content";
+ var path = "/_matrix/content";
var headers = {
"Content-Type": undefined // undefined means angular will figure it out
};
|