| Body Font | Header Font | ||
|---|---|---|---|
![]() |
The Loom API is XML over HTTP. Simply set the following headers to inform Loom you want to use XML:
Accept: application/xml
Content-Type: application/xml
Basic HTTP authentication is required to access the API. Ensure that you use the URL for your account (Loom accounts have their own subdomain.)
You could create an API user on your account so you can share the credentials between your developers. The Loom account owner can always generate random passwords for the API user, as long as you remember to use a real email address you’ll be able to receive it.
Methods return one of:
<pre style="overflow: scroll; background-color: #ffc">
curl -X GET -H 'Accept: application/xml' -H 'Content-Type: application/xml' http://example.loomapp.com/projects -u alex@example.com:password
</pre>
Where 1 is an ID returned by /projects:
<pre style="overflow: scroll; background-color: #ffc">
curl -X GET -H 'Accept: application/xml' -H 'Content-Type: application/xml' http://example.loomapp.com/project/1/issues -u alex@example.com:password
</pre>
Where 1 is an issue ID:
<pre style="overflow: scroll; background-color: #ffc">
curl -X GET -H 'Accept: application/xml' -H 'Content-Type: application/xml' http://example.loomapp.com/issues/1 -u alex@example.com:password
</pre>
POST to /issue to create an issue. The following fields are expected:
<pre style="overflow: scroll; background-color: #ffc">
curl -X POST -H 'Accept: application/xml' -H 'Content-Type: application/xml' -d '<issue><title>Example issue</title><reported_by_public>example@example.com</reported_by_public><severity>100</severity><project_id>1</project_id><description>Problem description</description></issue>' -H 'Content-Type: application/xml' http://example.loomapp.com/issues -u alex@example.com:password
</pre>
POST to /issues/update/ID to update an issue. You can omit fields that are unchanged.
<pre style="overflow: scroll; background-color: #ffc">
curl -X POST -H 'Accept: application/xml' -H 'Content-Type: application/xml' -d '<issue><title>Example issue</title></issue>' -H 'Content-Type: application/xml' http://example.loomapp.com/issues/update/1 -u alex@example.com:password
</pre>
Perform a GET request to /issues/destroy/ID to delete an issue.
<pre style="overflow: scroll; background-color: #ffc">
curl -X GET -H 'Accept: application/xml' -H 'Content-Type: application/xml' -H 'Content-Type: application/xml' http://example.loomapp.com/issues/destroy/1 -u alex@example.com:password
</pre>