diff --git a/doc/api/services.md b/doc/api/services.md
index ccfc0fccb7f20d467afb7dd0966effc03e9ccc18..bda8677bb8dcc611cf3a85c61af5334c1f814a1d 100644
--- a/doc/api/services.md
+++ b/doc/api/services.md
@@ -8,7 +8,7 @@ Asana - Teamwork without email
 
 Set Asana service for a project.
 
-> This service adds commit messages as comments to Asana tasks. Once enabled, commit messages are checked for Asana task URLs (for example, `https://app.asana.com/0/123456/987654`) or task IDs starting with # (for example, `#987654`). Every task ID found will get the commit comment added to it.  You can also close a task with a message containing: `fix #123456`.  You can find your Api Keys here: http://developer.asana.com/documentation/#api_keys
+> This service adds commit messages as comments to Asana tasks. Once enabled, commit messages are checked for Asana task URLs (for example, `https://app.asana.com/0/123456/987654`) or task IDs starting with # (for example, `#987654`). Every task ID found will get the commit comment added to it.  You can also close a task with a message containing: `fix #123456`.  You can find your Api Keys here: https://asana.com/developers/documentation/getting-started/auth#api-key
 
 ```
 PUT /projects/:id/services/asana
diff --git a/doc/ci/README.md b/doc/ci/README.md
index 3dd4e2bc2309e3028953c576805a433725343233..a9d407528e8a00097a826faaa1e8b16c8a96012b 100644
--- a/doc/ci/README.md
+++ b/doc/ci/README.md
@@ -16,5 +16,5 @@
 - [Trigger builds through the API](triggers/README.md)
 - [Build artifacts](build_artifacts/README.md)
 - [User permissions](permissions/README.md)
-- [API](../../api/ci/README.md)
+- [API](../api/ci/README.md)
 - [CI services (linked docker containers)](services/README.md)
diff --git a/doc/development/ci_setup.md b/doc/development/ci_setup.md
index 6776d9b083fd70b4101d271762ea3d8053de9237..2f49b3564ab4939e84f61223267db2dded144510 100644
--- a/doc/development/ci_setup.md
+++ b/doc/development/ci_setup.md
@@ -21,7 +21,7 @@ We currently use three CI services to test GitLab:
 
 Core team has access to trigger builds if needed for GitLab CE.
 
-We use [these build scripts](https://gitlab.com/gitlab-org/gitlab-ci/blob/master/doc/examples/build_script_gitlab_ce.md) for testing with GitLab CI.
+We use [these build scripts](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/.gitlab-ci.yml) for testing with GitLab CI.
 
 # Build configuration on [Semaphore](https://semaphoreapp.com/gitlabhq/gitlabhq/) for testing the [GitHub.com repo](https://github.com/gitlabhq/gitlabhq)
 
diff --git a/doc/public_access/public_access.md b/doc/public_access/public_access.md
index 17bb75ececdaf198a340c826a9ca6995e5325b9b..9a5c5a5c92a07fe4be7df16e3e3b92bb13b9e61e 100644
--- a/doc/public_access/public_access.md
+++ b/doc/public_access/public_access.md
@@ -17,7 +17,7 @@ Public projects can be cloned **without any** authentication.
 
 They will also be listed on the public access directory (`/public`).
 
-**Any logged in user** will have [Guest](../permissions/permissions)
+**Any logged in user** will have [Guest](../permissions/permissions.md)
 permissions on the repository.
 
 ### Internal projects
@@ -27,8 +27,8 @@ Internal projects can be cloned by any logged in user.
 They will also be listed on the public access directory (`/public`) for logged
 in users.
 
-Any logged in user will have [Guest](../permissions/permissions) permissions on
-the repository.
+Any logged in user will have [Guest](../permissions/permissions.md) permissions
+on the repository.
 
 ### How to change project visibility