> For the complete documentation index, see [llms.txt](https://quillainetwork.gitbook.io/quillai-network/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://quillainetwork.gitbook.io/quillai-network/agent-swarm/quillshield/api-guide/api-reference/upload-project.md).

# Upload Project

To upload a project, you need to initiate a GET request to the following URL, with 'fileName' as the input parameter.\
\ <mark style="color:blue;">`GET`</mark> <https://shield-api.quillai.network/api/v1/projects/upload/url>

{% tabs %}
{% tab title="200 Project Url Fetched" %}

<pre class="language-javascript"><code class="lang-javascript"><strong>{
</strong><strong>    "uploadUrl": "https://shield-dev-project-files.s3.ap-south-1.amazonaws.com/Project-235b374cb8647ab9df9ade037f896b45-abc.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&#x26;X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&#x26;X-Amz-Credential=AKIAXEQYZVJYL32YLXEH%2F20240826%2Fap-south-1%2Fs3%2Faws4_request&#x26;X-Amz-Date=20240826T080541Z&#x26;X-Amz-Expires=300&#x26;X-Amz-Signature=00a6df0911ba3025e8bcd5d31800bfb7e8bdbd904eef880e0587e58346d68849&#x26;X-Amz-SignedHeaders=host&#x26;x-id=PutObject",
</strong>    "uploadId": "Project-235b374cb8647ab9df9ade037f896b45-abc.zip"
}
</code></pre>

{% endtab %}

{% tab title="400 Bad Request" %}

```javascript
{
    "message": "must have required property 'fileName'"
}
```

{% endtab %}
{% endtabs %}

The resulting "uploadUrl" from the API is where you'll be uploading all your files to, in the form of a 'PUT' request. The files must strictly either be either zip archives or solidity contracts.

### Query Parameters

<table><thead><tr><th width="148">Parameter</th><th width="306">Description</th><th width="102">Data Type</th><th>Requirement</th></tr></thead><tbody><tr><td>fileName</td><td>Name of file to be uploaded along with filetype ( .sol or .zip)</td><td>String</td><td>Required</td></tr></tbody></table>

### Response Codes

| Responses | Description  |
| --------- | ------------ |
| 🟢 200    | Success      |
| 🟠 400    | Error        |
| 🔴 401    | Unauthorised |

### Sample Response

```javascript
{
    "uploadUrl": "https://shield-dev-project-files.s3.ap-south-1.amazonaws.com/Project-235b374cb8647ab9df9ade037f896b45-abc.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIAXEQYZVJYL32YLXEH%2F20240826%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20240826T080541Z&X-Amz-Expires=300&X-Amz-Signature=00a6df0911ba3025e8bcd5d31800bfb7e8bdbd904eef880e0587e58346d68849&X-Amz-SignedHeaders=host&x-id=PutObject",
    "uploadId": "Project-235b374cb8647ab9df9ade037f896b45-abc.zip"
}
```
