# Projects REST API Guide

## List of projects

> List of projects

```json
{"openapi":"3.0.3","info":{"title":"Fiddler API - 2.0","version":"2.0"},"tags":[{"name":"project-v3"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"filter":{"name":"filter","in":"query","description":"Allows you to filter by any field.","required":false,"schema":{"type":"string"}},"search":{"name":"search","in":"query","description":"Allows you to search by any field.","required":false,"schema":{"type":"string"}},"ordering":{"name":"ordering","in":"query","description":"Allows you to order results by any field. For desc order prefix field name with `-` and provide comman separated values for multiple fields","required":false,"schema":{"type":"string"}},"limit":{"name":"limit","in":"query","description":"Limit for the pagination","required":false,"schema":{"type":"integer"}},"offset":{"name":"offset","in":"query","description":"Offset for the pagination","required":false,"schema":{"type":"integer"}},"with_asset_count":{"name":"with_asset_count","in":"query","description":"whether to return asset count of the project or not","required":false,"schema":{"type":"boolean"}}},"schemas":{"PaginatedApiResponse":{"type":"object","description":"Response object for paginated API responses.\n","properties":{"api_version":{"type":"string","default":"3.0","enum":["2.0","3.0"],"description":"API version of the response.\n"},"kind":{"type":"string","default":"PAGINATED","enum":["PAGINATED"],"description":"Type of response, indicating a paginated response.\n"},"data":{"type":"object","properties":{"page_size":{"type":"integer","default":10,"description":"Number of items per page in the response.\n"},"item_count":{"type":"integer","default":10,"description":"Number of items in the current page.\n"},"total":{"type":"integer","default":100,"description":"Total number of items across all pages.\n"},"page_count":{"type":"integer","default":10,"description":"Total number of pages.\n"},"page_index":{"type":"integer","default":1,"description":"Current page index.\n"},"offset":{"type":"integer","default":0,"description":"Offset of the first item in the current page.\n"}}}}},"Projects":{"type":"array","description":"List of projects","items":{"$ref":"#/components/schemas/Project"}},"Project":{"type":"object","description":"Details of the project","required":["id","name","asset_type","organization","created_at","updated_at"],"allOf":[{"type":"object","properties":{"id":{"description":"Unique identifier of the project","type":"string","format":"uuid"},"name":{"description":"Name of the project","type":"string"},"asset_type":{"$ref":"#/components/schemas/AssetsType"},"organization":{"$ref":"#/components/schemas/OrganizationCompact"},"asset_count":{"type":"integer"}}},{"$ref":"#/components/schemas/CreateUpdateTimestamp"}]},"AssetsType":{"type":"string","description":"Type of project","enum":["ML_MODEL","GEN_AI_APP"]},"OrganizationCompact":{"type":"object","title":"OrganizationCompact","description":"Compact version of an organization which can be included in the response of relevant APIs.\n","required":["id","name"],"properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the organization.\n"},"name":{"type":"string","description":"Name of the organization.\n"}}},"CreateUpdateTimestamp":{"type":"object","required":["created_at","updated_at"],"properties":{"created_at":{"type":"string","format":"date-time","readOnly":true,"description":"Date and time when the object was created.\n"},"updated_at":{"type":"string","format":"date-time","readOnly":true,"description":"Date and time when the object was last updated.\n"}}},"ErrorResponse":{"type":"object","description":"Response object for errors returned by the API.\n","properties":{"api_version":{"type":"string","default":"3.0","enum":["2.0","3.0"],"description":"API version of the response.\n"},"kind":{"type":"string","default":"ERROR","enum":["ERROR"],"description":"Type of response, usually indicating an error.\n"},"error":{"type":"object","properties":{"code":{"type":"integer","format":"int32","description":"Represents the code for this error, typically an HTTP response code.\n","default":400,"enum":[400,403,404,500]},"message":{"type":"string","description":"A human-readable message providing more details about the error. If there are multiple errors, it will be the message for the first error.\n"},"errors":{"type":"array","description":"Container for additional information regarding the error, especially for multiple errors.\n","items":{"type":"object","properties":{"reason":{"type":"string","description":"Unique identifier for this error, different from the error code.\n"},"message":{"type":"string","description":"A human-readable message providing more details about the error. If there is only one error, this field will match error.message.\n"},"help":{"type":"string","description":"Link to support or documentation providing more information on the error.\n"}}}}}}}}},"responses":{"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/v3/projects":{"get":{"tags":["project-v3"],"summary":"List of projects","description":"List of projects","operationId":"getProjectsV3","parameters":[{"$ref":"#/components/parameters/filter"},{"$ref":"#/components/parameters/search"},{"$ref":"#/components/parameters/ordering"},{"$ref":"#/components/parameters/limit"},{"$ref":"#/components/parameters/offset"},{"$ref":"#/components/parameters/with_asset_count"}],"responses":{"200":{"description":"List of projects","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/PaginatedApiResponse"},{"type":"object","properties":{"data":{"type":"object","properties":{"items":{"$ref":"#/components/schemas/Projects"}}}}}]}}}},"400":{"$ref":"#/components/responses/400"},"500":{"$ref":"#/components/responses/500"}}}}}}
```

## Create new project

> Create new project

```json
{"openapi":"3.0.3","info":{"title":"Fiddler API - 2.0","version":"2.0"},"tags":[{"name":"project-v3"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"schemas":{"ProjectRequest":{"type":"object","title":"ProjectRequest","description":"Request body for creating a project","required":["name","asset_type"],"properties":{"name":{"description":"Name of the project","type":"string"},"asset_type":{"$ref":"#/components/schemas/AssetsType"}}},"AssetsType":{"type":"string","description":"Type of project","enum":["ML_MODEL","GEN_AI_APP"]},"ApiResponse":{"type":"object","description":"Response object for standard API responses.\n","properties":{"api_version":{"type":"string","default":"3.0","enum":["2.0","3.0"],"description":"API version.\n"},"kind":{"type":"string","default":"NORMAL","enum":["NORMAL"],"description":"Type of response, indicating a normal response.\n"}}},"Project":{"type":"object","description":"Details of the project","required":["id","name","asset_type","organization","created_at","updated_at"],"allOf":[{"type":"object","properties":{"id":{"description":"Unique identifier of the project","type":"string","format":"uuid"},"name":{"description":"Name of the project","type":"string"},"asset_type":{"$ref":"#/components/schemas/AssetsType"},"organization":{"$ref":"#/components/schemas/OrganizationCompact"},"asset_count":{"type":"integer"}}},{"$ref":"#/components/schemas/CreateUpdateTimestamp"}]},"OrganizationCompact":{"type":"object","title":"OrganizationCompact","description":"Compact version of an organization which can be included in the response of relevant APIs.\n","required":["id","name"],"properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the organization.\n"},"name":{"type":"string","description":"Name of the organization.\n"}}},"CreateUpdateTimestamp":{"type":"object","required":["created_at","updated_at"],"properties":{"created_at":{"type":"string","format":"date-time","readOnly":true,"description":"Date and time when the object was created.\n"},"updated_at":{"type":"string","format":"date-time","readOnly":true,"description":"Date and time when the object was last updated.\n"}}},"ErrorResponse":{"type":"object","description":"Response object for errors returned by the API.\n","properties":{"api_version":{"type":"string","default":"3.0","enum":["2.0","3.0"],"description":"API version of the response.\n"},"kind":{"type":"string","default":"ERROR","enum":["ERROR"],"description":"Type of response, usually indicating an error.\n"},"error":{"type":"object","properties":{"code":{"type":"integer","format":"int32","description":"Represents the code for this error, typically an HTTP response code.\n","default":400,"enum":[400,403,404,500]},"message":{"type":"string","description":"A human-readable message providing more details about the error. If there are multiple errors, it will be the message for the first error.\n"},"errors":{"type":"array","description":"Container for additional information regarding the error, especially for multiple errors.\n","items":{"type":"object","properties":{"reason":{"type":"string","description":"Unique identifier for this error, different from the error code.\n"},"message":{"type":"string","description":"A human-readable message providing more details about the error. If there is only one error, this field will match error.message.\n"},"help":{"type":"string","description":"Link to support or documentation providing more information on the error.\n"}}}}}}}}},"responses":{"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/v3/projects":{"post":{"tags":["project-v3"],"summary":"Create new project","description":"Create new project","operationId":"createProjectV3","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectRequest"}}}},"responses":{"200":{"description":"Details of the created project","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ApiResponse"},{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Project"}}}]}}}},"400":{"$ref":"#/components/responses/400"},"500":{"$ref":"#/components/responses/500"}}}}}}
```

## Detail info of a project for the specified project id

> Detail info of a project

```json
{"openapi":"3.0.3","info":{"title":"Fiddler API - 2.0","version":"2.0"},"tags":[{"name":"project-v3"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"project_id":{"name":"project_id","in":"path","description":"Path parameter for unique identifier of a project","required":true,"schema":{"type":"string","format":"uuid"}},"with_asset_count":{"name":"with_asset_count","in":"query","description":"whether to return asset count of the project or not","required":false,"schema":{"type":"boolean"}}},"schemas":{"ApiResponse":{"type":"object","description":"Response object for standard API responses.\n","properties":{"api_version":{"type":"string","default":"3.0","enum":["2.0","3.0"],"description":"API version.\n"},"kind":{"type":"string","default":"NORMAL","enum":["NORMAL"],"description":"Type of response, indicating a normal response.\n"}}},"Project":{"type":"object","description":"Details of the project","required":["id","name","asset_type","organization","created_at","updated_at"],"allOf":[{"type":"object","properties":{"id":{"description":"Unique identifier of the project","type":"string","format":"uuid"},"name":{"description":"Name of the project","type":"string"},"asset_type":{"$ref":"#/components/schemas/AssetsType"},"organization":{"$ref":"#/components/schemas/OrganizationCompact"},"asset_count":{"type":"integer"}}},{"$ref":"#/components/schemas/CreateUpdateTimestamp"}]},"AssetsType":{"type":"string","description":"Type of project","enum":["ML_MODEL","GEN_AI_APP"]},"OrganizationCompact":{"type":"object","title":"OrganizationCompact","description":"Compact version of an organization which can be included in the response of relevant APIs.\n","required":["id","name"],"properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the organization.\n"},"name":{"type":"string","description":"Name of the organization.\n"}}},"CreateUpdateTimestamp":{"type":"object","required":["created_at","updated_at"],"properties":{"created_at":{"type":"string","format":"date-time","readOnly":true,"description":"Date and time when the object was created.\n"},"updated_at":{"type":"string","format":"date-time","readOnly":true,"description":"Date and time when the object was last updated.\n"}}},"ErrorResponse":{"type":"object","description":"Response object for errors returned by the API.\n","properties":{"api_version":{"type":"string","default":"3.0","enum":["2.0","3.0"],"description":"API version of the response.\n"},"kind":{"type":"string","default":"ERROR","enum":["ERROR"],"description":"Type of response, usually indicating an error.\n"},"error":{"type":"object","properties":{"code":{"type":"integer","format":"int32","description":"Represents the code for this error, typically an HTTP response code.\n","default":400,"enum":[400,403,404,500]},"message":{"type":"string","description":"A human-readable message providing more details about the error. If there are multiple errors, it will be the message for the first error.\n"},"errors":{"type":"array","description":"Container for additional information regarding the error, especially for multiple errors.\n","items":{"type":"object","properties":{"reason":{"type":"string","description":"Unique identifier for this error, different from the error code.\n"},"message":{"type":"string","description":"A human-readable message providing more details about the error. If there is only one error, this field will match error.message.\n"},"help":{"type":"string","description":"Link to support or documentation providing more information on the error.\n"}}}}}}}}},"responses":{"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/v3/projects/{project_id}":{"get":{"tags":["project-v3"],"summary":"Detail info of a project for the specified project id","description":"Detail info of a project","operationId":"getProjectV3","parameters":[{"$ref":"#/components/parameters/project_id"},{"$ref":"#/components/parameters/with_asset_count"}],"responses":{"200":{"description":"Detail info of the project","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/ApiResponse"},{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Project"}}}]}}}},"400":{"$ref":"#/components/responses/400"},"404":{"$ref":"#/components/responses/404"},"500":{"$ref":"#/components/responses/500"}}}}}}
```

## Delete project by id

> Delete project by id

```json
{"openapi":"3.0.3","info":{"title":"Fiddler API - 2.0","version":"2.0"},"tags":[{"name":"project-v3"}],"security":[{"BearerAuth":[]}],"components":{"securitySchemes":{"BearerAuth":{"type":"http","scheme":"bearer"}},"parameters":{"project_id":{"name":"project_id","in":"path","description":"Path parameter for unique identifier of a project","required":true,"schema":{"type":"string","format":"uuid"}}},"responses":{"200":{"description":"Success","content":{}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Resource not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"schemas":{"ErrorResponse":{"type":"object","description":"Response object for errors returned by the API.\n","properties":{"api_version":{"type":"string","default":"3.0","enum":["2.0","3.0"],"description":"API version of the response.\n"},"kind":{"type":"string","default":"ERROR","enum":["ERROR"],"description":"Type of response, usually indicating an error.\n"},"error":{"type":"object","properties":{"code":{"type":"integer","format":"int32","description":"Represents the code for this error, typically an HTTP response code.\n","default":400,"enum":[400,403,404,500]},"message":{"type":"string","description":"A human-readable message providing more details about the error. If there are multiple errors, it will be the message for the first error.\n"},"errors":{"type":"array","description":"Container for additional information regarding the error, especially for multiple errors.\n","items":{"type":"object","properties":{"reason":{"type":"string","description":"Unique identifier for this error, different from the error code.\n"},"message":{"type":"string","description":"A human-readable message providing more details about the error. If there is only one error, this field will match error.message.\n"},"help":{"type":"string","description":"Link to support or documentation providing more information on the error.\n"}}}}}}}}}},"paths":{"/v3/projects/{project_id}":{"delete":{"tags":["project-v3"],"summary":"Delete project by id","description":"Delete project by id","operationId":"deleteProjectV3","parameters":[{"$ref":"#/components/parameters/project_id"}],"responses":{"200":{"$ref":"#/components/responses/200"},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"404":{"$ref":"#/components/responses/404"},"409":{"$ref":"#/components/responses/409"},"500":{"$ref":"#/components/responses/500"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fiddler.ai/api/rest-api/rest-api/projects.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
