Question: Title mostly says it. How can you trigger a Jenkins multibranch pipeline project build from a remote git repository?

The "Trigger builds remotely" build trigger option does not seem to work, since no tokens that you set are saved.

Answer: 
I couldn't get the API token as described in the accepted answer because there is no such link called "Manage Users" even though I log in as admin. Instead, I got the token as described in the [Jenkins Wiki](https://wiki.jenkins.io/display/JENKINS/Authenticating+scripted+clients):

> 
> The API token is available in your personal configuration page. Click
>  your name on the top right corner on every page, then click
>  "Configure" to see your API token
> 
> 
> 

Once you have the token, the following curl request will trigger a new build for a multibranch pipeline (Replace placeholders starting with `$`)

```
curl -X POST -u "$jenkins_username:$api_token" "http://$jenkins_url/job/$my-pipeline/job/$branch_name/build?token=BUILD_TOKEN"

```

**Notes**:

1. If the pipeline or branch name contains special characters, you need to encode it; for example, `/` becomes `%252F`.
2. The `token` query parameter is optional.
3. This answer has been verified in Jenkins v2.6.
I just recently got over this hurdle and would like to share my note. 

In my configuration (Jenkins 2.60.2), there is no way for me to enable the Trigger builds remotely (e.g., from scripts) option since I can only "View Configuration". This prevented me from trigger the pipeline by issue HTTP GET to end point (/job/project-name/job/job-name/build).

However, I found out that I can always trigger by issue HTTP POST to the end point.

You will have to provide a valid crumb in the request or disable the "Prevent Cross Site Request Forgery exploits" option in Configure Global Security.

Regards,