# Lifecycle scripts

## List Lifecycle Scripts

> Get all lifecycle scripts visible to user in a project

```json
{"openapi":"3.1.0","info":{"title":"Mithril","version":"1.0.0"},"servers":[{"url":"https://api.mithril.ai"}],"security":[{"MithrilAPIKey":[]}],"components":{"securitySchemes":{"MithrilAPIKey":{"type":"http","scheme":"bearer","bearerFormat":"fkey_<key>"}},"schemas":{"SortDirection":{"type":"string","enum":["asc","desc"]},"ListLifecycleScriptsResponse":{"properties":{"data":{"items":{"$ref":"#/components/schemas/LifecycleScriptModel"},"type":"array","title":"Data"},"next_cursor":{"type":"string","nullable":true}},"type":"object","required":["data"],"title":"ListLifecycleScriptsResponse"},"LifecycleScriptModel":{"properties":{"fid":{"type":"string","title":"Fid"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"content_url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Content Url"},"project":{"type":"string","title":"Project"},"created_at":{"type":"string","format":"datetime","title":"Created At"},"created_by":{"type":"string","title":"Created By"},"last_modified_at":{"type":"string","format":"datetime","title":"Last Modified At"},"last_modified_by":{"type":"string","title":"Last Modified By"},"scope":{"$ref":"#/components/schemas/LifecycleScriptScope"}},"type":"object","required":["fid","name","description","content_url","project","created_at","created_by","last_modified_at","last_modified_by","scope"],"title":"LifecycleScriptModel"},"LifecycleScriptScope":{"type":"string","enum":["PROJECT","ORGANIZATION","PLATFORM"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"oneOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/v2/lifecycle-scripts":{"get":{"tags":["lifecycle scripts"],"summary":"List Lifecycle Scripts","description":"Get all lifecycle scripts visible to user in a project","operationId":"list_lifecycle_scripts_v2_lifecycle_scripts_get","parameters":[{"name":"next_cursor","in":"query","required":false,"schema":{"nullable":true}},{"name":"sort_by","in":"query","required":false,"schema":{"enum":["created_at","last_modified_at"],"type":"string","nullable":true}},{"name":"sort_dir","in":"query","required":false,"schema":{"$ref":"#/components/schemas/SortDirection","nullable":true}},{"name":"project","in":"query","required":true,"schema":{"type":"string","title":"Project"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"nullable":true}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListLifecycleScriptsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## Create Lifecycle Script

> Create a new lifecycle script

```json
{"openapi":"3.1.0","info":{"title":"Mithril","version":"1.0.0"},"servers":[{"url":"https://api.mithril.ai"}],"security":[{"MithrilAPIKey":[]}],"components":{"securitySchemes":{"MithrilAPIKey":{"type":"http","scheme":"bearer","bearerFormat":"fkey_<key>"}},"schemas":{"CreateLifecycleScriptRequest":{"properties":{"project":{"type":"string","title":"Project"},"name":{"type":"string","minLength":1,"title":"Name"},"content":{"type":"string","minLength":1,"title":"Content"},"description":{"type":"string","nullable":true},"scope":{"$ref":"#/components/schemas/PublicLifecycleScriptScope","default":"PROJECT"}},"type":"object","required":["project","name","content"],"title":"CreateLifecycleScriptRequest"},"PublicLifecycleScriptScope":{"type":"string","enum":["PROJECT","ORGANIZATION"]},"LifecycleScriptModel":{"properties":{"fid":{"type":"string","title":"Fid"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"content_url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Content Url"},"project":{"type":"string","title":"Project"},"created_at":{"type":"string","format":"datetime","title":"Created At"},"created_by":{"type":"string","title":"Created By"},"last_modified_at":{"type":"string","format":"datetime","title":"Last Modified At"},"last_modified_by":{"type":"string","title":"Last Modified By"},"scope":{"$ref":"#/components/schemas/LifecycleScriptScope"}},"type":"object","required":["fid","name","description","content_url","project","created_at","created_by","last_modified_at","last_modified_by","scope"],"title":"LifecycleScriptModel"},"LifecycleScriptScope":{"type":"string","enum":["PROJECT","ORGANIZATION","PLATFORM"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"oneOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/v2/lifecycle-scripts":{"post":{"tags":["lifecycle scripts"],"summary":"Create Lifecycle Script","description":"Create a new lifecycle script","operationId":"create_lifecycle_script_v2_lifecycle_scripts_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateLifecycleScriptRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LifecycleScriptModel"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## GET /v2/lifecycle-scripts/{ls\_fid}/content

> Get Lifecycle Script Content

```json
{"openapi":"3.1.0","info":{"title":"Mithril","version":"1.0.0"},"servers":[{"url":"https://api.mithril.ai"}],"security":[{"MithrilAPIKey":[]}],"components":{"securitySchemes":{"MithrilAPIKey":{"type":"http","scheme":"bearer","bearerFormat":"fkey_<key>"}},"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"oneOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/v2/lifecycle-scripts/{ls_fid}/content":{"get":{"tags":["lifecycle scripts"],"summary":"Get Lifecycle Script Content","operationId":"get_lifecycle_script_content_v2_lifecycle_scripts__ls_fid__content_get","parameters":[{"name":"ls_fid","in":"path","required":true,"schema":{"type":"string","title":"Ls Fid"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## DELETE /v2/lifecycle-scripts/{ls\_fid}

> Delete Lifecycle Script

```json
{"openapi":"3.1.0","info":{"title":"Mithril","version":"1.0.0"},"servers":[{"url":"https://api.mithril.ai"}],"security":[{"MithrilAPIKey":[]}],"components":{"securitySchemes":{"MithrilAPIKey":{"type":"http","scheme":"bearer","bearerFormat":"fkey_<key>"}},"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"oneOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/v2/lifecycle-scripts/{ls_fid}":{"delete":{"tags":["lifecycle scripts"],"summary":"Delete Lifecycle Script","operationId":"delete_lifecycle_script_v2_lifecycle_scripts__ls_fid__delete","parameters":[{"name":"ls_fid","in":"path","required":true,"schema":{"type":"string","title":"Ls Fid"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```

## PATCH /v2/lifecycle-scripts/{ls\_fid}

> Update Lifecycle Script

```json
{"openapi":"3.1.0","info":{"title":"Mithril","version":"1.0.0"},"servers":[{"url":"https://api.mithril.ai"}],"security":[{"MithrilAPIKey":[]}],"components":{"securitySchemes":{"MithrilAPIKey":{"type":"http","scheme":"bearer","bearerFormat":"fkey_<key>"}},"schemas":{"UpdateLifecycleScriptRequest":{"properties":{"name":{"type":"string","minLength":1,"nullable":true},"description":{"type":"string","nullable":true},"scope":{"$ref":"#/components/schemas/PublicLifecycleScriptScope","nullable":true}},"type":"object","title":"UpdateLifecycleScriptRequest"},"PublicLifecycleScriptScope":{"type":"string","enum":["PROJECT","ORGANIZATION"]},"LifecycleScriptModel":{"properties":{"fid":{"type":"string","title":"Fid"},"name":{"type":"string","title":"Name"},"description":{"type":"string","title":"Description"},"content_url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Content Url"},"project":{"type":"string","title":"Project"},"created_at":{"type":"string","format":"datetime","title":"Created At"},"created_by":{"type":"string","title":"Created By"},"last_modified_at":{"type":"string","format":"datetime","title":"Last Modified At"},"last_modified_by":{"type":"string","title":"Last Modified By"},"scope":{"$ref":"#/components/schemas/LifecycleScriptScope"}},"type":"object","required":["fid","name","description","content_url","project","created_at","created_by","last_modified_at","last_modified_by","scope"],"title":"LifecycleScriptModel"},"LifecycleScriptScope":{"type":"string","enum":["PROJECT","ORGANIZATION","PLATFORM"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ValidationError":{"properties":{"loc":{"items":{"oneOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}},"paths":{"/v2/lifecycle-scripts/{ls_fid}":{"patch":{"tags":["lifecycle scripts"],"summary":"Update Lifecycle Script","operationId":"update_lifecycle_script_v2_lifecycle_scripts__ls_fid__patch","parameters":[{"name":"ls_fid","in":"path","required":true,"schema":{"type":"string","title":"Ls Fid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateLifecycleScriptRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LifecycleScriptModel"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}}}
```
