{"openapi":"3.0.0","info":{"contact":{"email":"team@appveyor.com","name":"AppVeyor Team","url":"https://www.appveyor.com/about/"},"description":"AppVeyor is a hosted continuous integration service which runs on Microsoft\nWindows.  The AppVeyor REST API provides a RESTful way to interact with the\nAppVeyor service.  This includes managing projects, builds, deployments,\nand the teams that build them.\n\nAdditional help and discussion of the AppVeyor REST API is available at\nhttp://help.appveyor.com/discussions\n\nThis Swagger definition is an **unofficial** description of the AppVeyor\nREST API maintained at https://github.com/kevinoid/appveyor-swagger\nPlease report any issues or suggestions for this Swagger definition at\nhttps://github.com/kevinoid/appveyor-swagger/issues/new\n\n#### API Conventions\n\nFields which are missing from update operations (`PUT` requests) are\ntypically reset to their default values.  So although most fields are not\ntechnically required, they should usually be specified in practice.\n","license":{"name":"AppVeyor End User License Agreement (EULA)","url":"https://www.appveyor.com/eula/"},"termsOfService":"https://www.appveyor.com/terms-of-service/","title":"AppVeyor REST API","version":"1.0.0","x-apisguru-categories":["developer_tools"],"x-logo":{"url":"https://www.appveyor.com/assets/img/appveyor-logo-256.png"},"x-origin":[{"format":"swagger","url":"https://raw.githubusercontent.com/kevinoid/appveyor-swagger/master/swagger.yaml","version":"2.0"}],"x-providerName":"appveyor.com","x-unofficialSpec":true},"externalDocs":{"description":"AppVeyor REST API Documentation","url":"https://www.appveyor.com/docs/api/"},"security":[{"apiToken":[]}],"tags":[{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/"},"name":"Collaborator"},{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/"},"name":"Role"},{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/"},"name":"User"},{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/"},"name":"Build"},{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/"},"name":"Project"},{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/"},"name":"Deployment"},{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/"},"name":"Environment"}],"paths":{"/account/encrypt":{"post":{"operationId":"encryptValue","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EncryptRequest"}}},"required":true},"responses":{"200":{"description":"Success","content":{"text/plain":{"schema":{"type":"string"},"examples":{"response":{"value":"wsnoY4v1v1Uofj0xf8E6FA=="}}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Encrypt a value for use in StoredValue.","tags":["Project"]}},"/buildjobs/{jobId}/artifacts":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/samples/download-artifacts-advanced-ps/"},"operationId":"getBuildArtifacts","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ArtifactModel"},"type":"array"},"examples":{"response":{"value":[{"fileName":"README.md","name":"README.md","size":3600,"type":"File"},{"fileName":"out/example.Release.x64.zip","name":"out\\example.zip","size":15600,"type":"Zip"}]}}},"application/xml":{"schema":{"items":{"$ref":"#/components/schemas/ArtifactModel"},"type":"array"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get build artifacts","tags":["Build"]},"parameters":[{"$ref":"#/components/parameters/jobId"}]},"/buildjobs/{jobId}/artifacts/{artifactFileName}":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/samples/download-artifacts-advanced-ps/"},"operationId":"getBuildArtifact","responses":{"200":{"description":"Success","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Download build artifact","tags":["Build"]},"parameters":[{"$ref":"#/components/parameters/jobId"},{"$ref":"#/components/parameters/artifactFileName"}]},"/buildjobs/{jobId}/log":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#download-build-log"},"operationId":"getBuildLog","responses":{"200":{"description":"Success.\nNote:  Response content is plain text sent with Content-Type\napplication/octet-stream.","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Download build log","tags":["Build"]},"parameters":[{"$ref":"#/components/parameters/jobId"}]},"/builds":{"post":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#start-build-of-branch-most-recent-commit"},"operationId":"startBuild","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BuildStartRequest"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Build"},"examples":{"response":{"value":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":136709,"buildNumber":7,"commitId":"c2892a70d60c96c1b65a7c665ab806b7731fea8a","committed":"2025-06-15T13:47:06.486Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.486Z","jobs":[],"message":"replaced with command [skip ci]","messages":[],"status":"queued","version":"1.0.7"}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/Build"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Start build of branch most recent commit","tags":["Build"]},"put":{"description":"If `reRunIncomplete` is `true` and all jobs in the referenced build completed successfully, a 500 Internal Server Error is returned with the message \"No failed or cancelled jobs in build with ID {buildId}\".","externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#re-run-build"},"operationId":"reRunBuild","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReRunBuildRequest"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Build"},"examples":{"response":{"value":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":136709,"buildNumber":7,"commitId":"c2892a70d60c96c1b65a7c665ab806b7731fea8a","committed":"2025-06-15T13:47:06.486Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.486Z","jobs":[],"message":"replaced with command [skip ci]","messages":[],"status":"queued","version":"1.0.7"}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/Build"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Re-run build","tags":["Build"]}},"/builds/{accountName}/{projectSlug}/{buildVersion}":{"delete":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#cancel-build"},"operationId":"cancelBuild","responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Cancel build","tags":["Build"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"},{"$ref":"#/components/parameters/buildVersion"}]},"/collaborators":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#get-collaborators"},"operationId":"getCollaborators","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UserAccount"},"type":"array"},"examples":{"response":{"value":[{"accountId":2,"accountName":"FeodorFitsner","created":"2025-06-15T13:47:06.486Z","email":"john@smith.com","failedBuildNotification":"all","fullName":"John Smith","isCollaborator":true,"isOwner":false,"notifyWhenBuildStatusChangedOnly":true,"roleId":3040,"roleName":"My Role","successfulBuildNotification":"all","updated":"2025-06-15T13:47:06.486Z","userId":2018}]}}},"application/xml":{"schema":{"items":{"$ref":"#/components/schemas/UserAccount"},"type":"array"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get collaborators","tags":["Collaborator"]},"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#update-collaborator"},"operationId":"updateCollaborator","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollaboratorUpdate"}}},"required":true},"responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Update collaborator","tags":["Collaborator"]}},"/collaborators/{userId}":{"delete":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#delete-collaborator"},"operationId":"deleteCollaborator","responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Delete collaborator","tags":["Collaborator"]},"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#get-collaborator"},"operationId":"getCollaborator","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserAccountRolesResults"},"examples":{"response":{"value":{"roles":[{"created":"2025-06-15T13:47:06.487Z","isSystem":true,"name":"Administrator","roleId":4},{"created":"2025-06-15T13:47:06.487Z","isSystem":true,"name":"User","roleId":5},{"created":"2025-06-15T13:47:06.487Z","isSystem":false,"name":"My Role","roleId":3040,"updated":"2025-06-15T13:47:06.487Z"}],"user":{"accountId":2,"accountName":"FeodorFitsner","created":"2025-06-15T13:47:06.487Z","email":"john@smith.com","failedBuildNotification":"all","fullName":"John Smith","isCollaborator":true,"isOwner":false,"notifyWhenBuildStatusChangedOnly":true,"roleId":3040,"roleName":"My Role","successfulBuildNotification":"all","updated":"2025-06-15T13:47:06.487Z","userId":2018}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/UserAccountRolesResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get collaborator","tags":["Collaborator"]},"parameters":[{"$ref":"#/components/parameters/userId"}]},"/deployments":{"post":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#start-deployment"},"operationId":"startDeployment","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentStartRequest"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Deployment"},"examples":{"response":{"value":{"build":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":132746,"buildNumber":38,"commitId":"c397ba5d17dd17b994375405f560e4922207da1e","committed":"2025-06-15T13:47:06.487Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.487Z","finished":"2025-06-15T13:47:06.487Z","jobs":[],"message":"Removed Start-Website","messages":[],"started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z","version":"1.0.38"},"created":"2025-06-15T13:47:06.487Z","deploymentId":19475,"environment":{"created":"2025-06-15T13:47:06.487Z","deploymentEnvironmentId":27,"name":"agent test","provider":"Agent","updated":"2025-06-15T13:47:06.487Z"},"finished":"2025-06-15T13:47:06.487Z","jobs":[{"created":"2025-06-15T13:47:06.487Z","finished":"2025-06-15T13:47:06.487Z","jobId":"jnpbcc77s4w278e4","messagesCount":0,"name":"Deployment","started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z"}],"started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z"}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/Deployment"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Start deployment","tags":["Deployment"]}},"/deployments/stop":{"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#cancel-deployment"},"operationId":"cancelDeployment","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentCancellation"}}},"required":true},"responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Cancel deployment","tags":["Deployment"]}},"/deployments/{deploymentId}":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#get-deployment"},"operationId":"getDeployment","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectDeployment"},"examples":{"response":{"value":{"deployment":{"build":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":132746,"buildNumber":38,"commitId":"c397ba5d17dd17b994375405f560e4922207da1e","committed":"2025-06-15T13:47:06.487Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.487Z","finished":"2025-06-15T13:47:06.487Z","jobs":[],"message":"Removed Start-Website","messages":[],"started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z","version":"1.0.38"},"created":"2025-06-15T13:47:06.487Z","deploymentId":19475,"environment":{"created":"2025-06-15T13:47:06.487Z","deploymentEnvironmentId":27,"name":"agent test","provider":"Agent","updated":"2025-06-15T13:47:06.487Z"},"finished":"2025-06-15T13:47:06.487Z","jobs":[{"created":"2025-06-15T13:47:06.487Z","finished":"2025-06-15T13:47:06.487Z","jobId":"jnpbcc77s4w278e4","messagesCount":0,"name":"Deployment","started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z"}],"started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z"},"project":{"accountId":2,"accountName":"appvyr","builds":[],"created":"2025-06-15T13:47:06.487Z","isPrivate":false,"name":"simple-web","projectId":22321,"repositoryName":"AppVeyor/simple-web","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{},"skipBranchesWithoutAppveyorYml":false,"slug":"simple-web","updated":"2025-06-15T13:47:06.487Z"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/ProjectDeployment"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get deployment","tags":["Deployment"]},"parameters":[{"$ref":"#/components/parameters/deploymentId"}]},"/environments":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#get-environments"},"operationId":"getEnvironments","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/DeploymentEnvironmentLookupModel"},"type":"array"},"examples":{"response":{"value":[{"deploymentEnvironmentId":14,"name":"azure-blob-1","provider":"AzureBlob"},{"deploymentEnvironmentId":12,"name":"azure-deploy-test","provider":"AzureCS"}]}}},"application/xml":{"schema":{"items":{"$ref":"#/components/schemas/DeploymentEnvironmentLookupModel"},"type":"array"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get environments","tags":["Environment"]},"post":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#add-environment"},"operationId":"addEnvironment","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentAddition"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentWithSettings"},"examples":{"response":{"value":{"created":"2025-06-15T13:47:06.487Z","deploymentEnvironmentId":3018,"environmentAccessKey":"gi3ttevuk7a123","name":"production","provider":"FTP","settings":{"environmentVariables":[{"name":"my-var","value":{"isEncrypted":false,"value":"123"}}],"providerSettings":[{"name":"server","value":{"isEncrypted":false,"value":"ftp.myserver.com"}},{"name":"username","value":{"isEncrypted":false,"value":"ftp-user"}},{"name":"password","value":{"isEncrypted":true,"value":"password"}}]}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentWithSettings"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Add environment","tags":["Environment"]},"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#update-environment"},"operationId":"updateEnvironment","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentWithSettings"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentWithSettings"},"examples":{"response":{"value":{"created":"2025-06-15T13:47:06.487Z","deploymentEnvironmentId":3018,"environmentAccessKey":"gi3ttevuk7123","name":"production","provider":"FTP","settings":{"environmentVariables":[{"name":"my-var","value":{"isEncrypted":false,"value":"123"}}],"providerSettings":[{"name":"server","value":{"isEncrypted":false,"value":"ftp.myserver.com"}},{"name":"username","value":{"isEncrypted":false,"value":"ftp-user"}},{"name":"password","value":{"isEncrypted":true,"value":"password"}}]},"updated":"2025-06-15T13:47:06.487Z"}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentWithSettings"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Update environment","tags":["Environment"]}},"/environments/{deploymentEnvironmentId}":{"delete":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#delete-environment"},"operationId":"deleteEnvironment","responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Delete environment","tags":["Environment"]},"parameters":[{"$ref":"#/components/parameters/deploymentEnvironmentId"}]},"/environments/{deploymentEnvironmentId}/deployments":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#get-environment-deployments"},"operationId":"getEnvironmentDeployments","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentDeploymentsResults"},"examples":{"response":{"value":{"deployments":[{"deployment":{"build":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":18665,"buildNumber":25,"commitId":"ed40bd27f732d162b2185d75921b1cd57191f83b","committed":"2025-06-15T13:47:06.487Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.487Z","finished":"2025-06-15T13:47:06.487Z","jobs":[],"message":"Merge pull request #3 from FeodorFitsner/master","messageExtended":"Changes to AccountController","messages":[],"started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z","version":"1.0.25"},"created":"2025-06-15T13:47:06.487Z","deploymentId":4120,"environment":{"created":"2025-06-15T13:47:06.487Z","deploymentEnvironmentId":14,"name":"azure-blob-1","provider":"AzureBlob","updated":"2025-06-15T13:47:06.487Z"},"finished":"2025-06-15T13:47:06.487Z","jobs":[{"created":"2025-06-15T13:47:06.487Z","finished":"2025-06-15T13:47:06.487Z","jobId":"1696fh3a2w5ng99y","messagesCount":0,"name":"Deployment","started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z"}],"started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z"},"project":{"accountId":2,"accountName":"FeodorFitsner","builds":[],"created":"2025-06-15T13:47:06.487Z","isPrivate":false,"name":"simple-web","projectId":15072,"repositoryName":"AppVeyor/simple-web","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{},"skipBranchesWithoutAppveyorYml":false,"slug":"simple-web","updated":"2025-06-15T13:47:06.487Z"}}],"environment":{"created":"2025-06-15T13:47:06.487Z","deploymentEnvironmentId":14,"name":"azure-blob-1","provider":"AzureBlob","updated":"2025-06-15T13:47:06.487Z"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentDeploymentsResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get environment deployments","tags":["Environment"]},"parameters":[{"$ref":"#/components/parameters/deploymentEnvironmentId"}]},"/environments/{deploymentEnvironmentId}/settings":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/environments-deployments/#get-environment-settings"},"operationId":"getEnvironmentSettings","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentSettingsResults"},"examples":{"response":{"value":{"environment":{"created":"2025-06-15T13:47:06.487Z","deploymentEnvironmentId":14,"environmentAccessKey":"aaabbb12345","name":"azure-blob-1","provider":"AzureBlob","settings":{"environmentVariables":[],"providerSettings":[{"name":"storage_account_name","value":{"isEncrypted":false,"value":"myaccount"}},{"name":"storage_access_key","value":{"isEncrypted":true,"value":"4sc1c7/Qp5buQcZ8N486Ks46mLFbXJVqcJjyv98w=="}},{"name":"container","value":{"isEncrypted":false,"value":"test"}},{"name":"folder","value":{"isEncrypted":false,"value":"$(appveyor_build_version)"}},{"name":"artifact","value":{"isEncrypted":false}}]},"updated":"2025-06-15T13:47:06.487Z"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/DeploymentEnvironmentSettingsResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get environment settings","tags":["Environment"]},"parameters":[{"$ref":"#/components/parameters/deploymentEnvironmentId"}]},"/projects":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-projects"},"operationId":"getProjects","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Project"},"type":"array"},"examples":{"response":{"value":[{"accountId":2,"accountName":"FeodorFitsner","builds":[{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":23864,"buildNumber":3,"commitId":"c2892a70d60c96c1b65a7c665ab806b7731fea8a","committed":"2025-06-15T13:47:06.487Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.487Z","finished":"2025-06-15T13:47:06.487Z","jobs":[],"message":"replaced with command [skip ci]","messages":[],"started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z","version":"1.0.3"}],"created":"2025-06-15T13:47:06.487Z","isPrivate":false,"name":"appveyor-artifact-test","nuGetFeed":{"created":"2025-06-15T13:47:06.487Z","id":"appveyor-artifact-test-j8kk0o","name":"Project appveyor-artifact-test","publishingEnabled":false},"projectId":19096,"repositoryBranch":"master","repositoryName":"FeodorFitsner/appveyor-artifact-test","repositoryScm":"git","repositoryType":"gitHub","skipBranchesWithoutAppveyorYml":false,"slug":"appveyor-artifact-test"}]}}},"application/xml":{"schema":{"items":{"$ref":"#/components/schemas/Project"},"type":"array"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get projects","tags":["Project"]},"post":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#add-project"},"operationId":"addProject","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectAddition"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Project"},"examples":{"response":{"value":{"accountId":2,"accountName":"appvyr","builds":[],"created":"2025-06-15T13:47:06.487Z","isPrivate":false,"name":"demo-app","projectId":43682,"repositoryName":"FeodorFitsner/demo-app","repositoryScm":"git","repositoryType":"gitHub","skipBranchesWithoutAppveyorYml":false,"slug":"demo-app-335"}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/Project"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Add project","tags":["Project"]},"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#update-project"},"operationId":"updateProject","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectWithConfiguration"}}},"required":true},"responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Update project","tags":["Project"]}},"/projects/status/{badgeRepoProvider}/{repoAccountName}/{repoSlug}":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/status-badges/"},"operationId":"getPublicProjectStatusBadge","parameters":[{"$ref":"#/components/parameters/branch"},{"$ref":"#/components/parameters/svg"},{"$ref":"#/components/parameters/retina"},{"$ref":"#/components/parameters/passingText"},{"$ref":"#/components/parameters/failingText"},{"$ref":"#/components/parameters/pendingText"}],"responses":{"200":{"description":"Success","content":{"image/svg+xml":{"schema":{"type":"string","format":"binary"}},"image/png":{"schema":{"type":"string","format":"binary"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get status badge image for a project with a public repository","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/badgeRepoProvider"},{"$ref":"#/components/parameters/repoAccountName"},{"$ref":"#/components/parameters/repoSlug"}]},"/projects/status/{statusBadgeId}":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/status-badges/"},"operationId":"getProjectStatusBadge","parameters":[{"$ref":"#/components/parameters/svg"},{"$ref":"#/components/parameters/retina"},{"$ref":"#/components/parameters/passingText"},{"$ref":"#/components/parameters/failingText"},{"$ref":"#/components/parameters/pendingText"}],"responses":{"200":{"description":"Success","content":{"image/svg+xml":{"schema":{"type":"string","format":"binary"}},"image/png":{"schema":{"type":"string","format":"binary"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get project status badge image","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/statusBadgeId"}]},"/projects/status/{statusBadgeId}/branch/{buildBranch}":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/status-badges/"},"operationId":"getProjectBranchStatusBadge","parameters":[{"$ref":"#/components/parameters/svg"},{"$ref":"#/components/parameters/retina"},{"$ref":"#/components/parameters/passingText"},{"$ref":"#/components/parameters/failingText"},{"$ref":"#/components/parameters/pendingText"}],"responses":{"200":{"description":"Success","content":{"image/svg+xml":{"schema":{"type":"string","format":"binary"}},"image/png":{"schema":{"type":"string","format":"binary"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get project branch status badge image","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/statusBadgeId"},{"$ref":"#/components/parameters/buildBranch"}]},"/projects/{accountName}/{projectSlug}":{"delete":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#delete-project"},"operationId":"deleteProject","responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Delete project","tags":["Project"]},"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-project-last-build"},"operationId":"getProjectLastBuild","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectBuildResults"},"examples":{"response":{"value":{"build":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":134173,"buildNumber":45,"commitId":"85da1fb810ae89744abad83e75c13483dd740258","committed":"2025-06-15T13:47:06.487Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.487Z","finished":"2025-06-15T13:47:06.487Z","jobs":[{"allowFailure":false,"artifactsCount":0,"compilationErrorsCount":0,"compilationMessagesCount":0,"compilationWarningsCount":0,"created":"2025-06-15T13:47:06.487Z","failedTestsCount":0,"finished":"2025-06-15T13:47:06.487Z","jobId":"9r2qufuu8","messagesCount":0,"name":"","passedTestsCount":0,"started":"2025-06-15T13:47:06.487Z","status":"success","testsCount":0,"updated":"2025-06-15T13:47:06.487Z"}],"message":"AssemblyInfo patching","messages":[],"started":"2025-06-15T13:47:06.487Z","status":"success","updated":"2025-06-15T13:47:06.487Z","version":"1.0.45"},"project":{"accountId":2,"accountName":"appvyr","builds":[],"created":"2025-06-15T13:47:06.487Z","isPrivate":false,"name":"nuget-test","nuGetFeed":{"created":"2025-06-15T13:47:06.487Z","id":"nuget-test-23spw2w","name":"Project nuget-test","publishingEnabled":false},"projectId":38907,"repositoryBranch":"master","repositoryName":"FeodorFitsner/nuget-test","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{},"skipBranchesWithoutAppveyorYml":false,"slug":"nuget-test","updated":"2025-06-15T13:47:06.488Z"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/ProjectBuildResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get project last build","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"}]},"/projects/{accountName}/{projectSlug}/artifacts/{artifactFileName}":{"get":{"description":"The `job` parameter is mandatory if the build contains multiple jobs.","externalDocs":{"url":"https://www.appveyor.com/docs/packaging-artifacts/#permalink-to-the-last-successful-build-artifact"},"operationId":"getProjectArtifact","responses":{"200":{"description":"Success","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get last successful build artifact","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"},{"$ref":"#/components/parameters/artifactFileName"},{"$ref":"#/components/parameters/branch"},{"$ref":"#/components/parameters/tag"},{"$ref":"#/components/parameters/job"},{"$ref":"#/components/parameters/all"},{"$ref":"#/components/parameters/pr"}]},"/projects/{accountName}/{projectSlug}/branch/{buildBranch}":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-project-last-branch-build"},"operationId":"getProjectLastBuildBranch","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectBuildResults"},"examples":{"response":{"value":{"build":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":134173,"buildNumber":45,"commitId":"85da1fb810ae89744abad83e75c13483dd740258","committed":"2025-06-15T13:47:06.488Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.488Z","finished":"2025-06-15T13:47:06.488Z","jobs":[{"allowFailure":false,"artifactsCount":0,"compilationErrorsCount":0,"compilationMessagesCount":0,"compilationWarningsCount":0,"created":"2025-06-15T13:47:06.488Z","failedTestsCount":0,"finished":"2025-06-15T13:47:06.488Z","jobId":"9r2qufuu8","messagesCount":0,"name":"","passedTestsCount":0,"started":"2025-06-15T13:47:06.488Z","status":"success","testsCount":0,"updated":"2025-06-15T13:47:06.488Z"}],"message":"AssemblyInfo patching","messages":[],"started":"2025-06-15T13:47:06.488Z","status":"success","updated":"2025-06-15T13:47:06.488Z","version":"1.0.45"},"project":{"accountId":2,"accountName":"appvyr","builds":[],"created":"2025-06-15T13:47:06.488Z","isPrivate":false,"name":"nuget-test","nuGetFeed":{"created":"2025-06-15T13:47:06.488Z","id":"nuget-test-23spw2w","name":"Project nuget-test","publishingEnabled":false},"projectId":38907,"repositoryBranch":"master","repositoryName":"FeodorFitsner/nuget-test","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{},"skipBranchesWithoutAppveyorYml":false,"slug":"nuget-test","updated":"2025-06-15T13:47:06.488Z"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/ProjectBuildResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get project last branch build","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"},{"$ref":"#/components/parameters/buildBranch"}]},"/projects/{accountName}/{projectSlug}/build/{buildVersion}":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-project-build-by-version"},"operationId":"getProjectBuildByVersion","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectBuildResults"},"examples":{"response":{"value":{"build":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":134173,"buildNumber":45,"commitId":"85da1fb810ae89744abad83e75c13483dd740258","committed":"2025-06-15T13:47:06.488Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.488Z","finished":"2025-06-15T13:47:06.488Z","jobs":[{"allowFailure":false,"artifactsCount":0,"compilationErrorsCount":0,"compilationMessagesCount":0,"compilationWarningsCount":0,"created":"2025-06-15T13:47:06.488Z","failedTestsCount":0,"finished":"2025-06-15T13:47:06.488Z","jobId":"9r2qufuu8","messagesCount":0,"name":"","passedTestsCount":0,"started":"2025-06-15T13:47:06.488Z","status":"success","testsCount":0,"updated":"2025-06-15T13:47:06.488Z"}],"message":"AssemblyInfo patching","messages":[],"started":"2025-06-15T13:47:06.488Z","status":"success","updated":"2025-06-15T13:47:06.488Z","version":"1.0.45"},"project":{"accountId":2,"accountName":"appvyr","builds":[],"created":"2025-06-15T13:47:06.488Z","isPrivate":false,"name":"nuget-test","nuGetFeed":{"created":"2025-06-15T13:47:06.488Z","id":"nuget-test-23spw2w","name":"Project nuget-test","publishingEnabled":false},"projectId":38907,"repositoryBranch":"master","repositoryName":"FeodorFitsner/nuget-test","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{},"skipBranchesWithoutAppveyorYml":false,"slug":"nuget-test","updated":"2025-06-15T13:47:06.488Z"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/ProjectBuildResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get project build by version","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"},{"$ref":"#/components/parameters/buildVersion"}]},"/projects/{accountName}/{projectSlug}/buildcache":{"delete":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#delete-project-build-cache"},"operationId":"deleteProjectBuildCache","responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Delete project build cache","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"}]},"/projects/{accountName}/{projectSlug}/deployments":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-project-deployments"},"operationId":"getProjectDeployments","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectDeploymentsResults"},"examples":{"response":{"value":{"deployments":[{"deployment":{"build":{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":132746,"buildNumber":38,"commitId":"c397ba5d17dd17b994375405f560e4922207da1e","committed":"2025-06-15T13:47:06.488Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.488Z","finished":"2025-06-15T13:47:06.488Z","jobs":[],"message":"Removed Start-Website","messages":[],"started":"2025-06-15T13:47:06.488Z","status":"success","updated":"2025-06-15T13:47:06.488Z","version":"1.0.38"},"created":"2025-06-15T13:47:06.488Z","deploymentId":19475,"environment":{"created":"2025-06-15T13:47:06.488Z","deploymentEnvironmentId":27,"name":"agent test","provider":"Agent","updated":"2025-06-15T13:47:06.488Z"},"finished":"2025-06-15T13:47:06.488Z","jobs":[{"created":"2025-06-15T13:47:06.488Z","finished":"2025-06-15T13:47:06.488Z","jobId":"jnpbcc77s4w278e4","messagesCount":0,"name":"Deployment","started":"2025-06-15T13:47:06.488Z","status":"success","updated":"2025-06-15T13:47:06.488Z"},{"created":"2025-06-15T13:47:06.488Z","finished":"2025-06-15T13:47:06.488Z","jobId":"nbgyf7pn65d4agyr","messagesCount":0,"name":"TEST-AGENT-DEPL","started":"2025-06-15T13:47:06.488Z","status":"success","updated":"2025-06-15T13:47:06.488Z"}],"started":"2025-06-15T13:47:06.488Z","status":"success","updated":"2025-06-15T13:47:06.488Z"},"environment":{"created":"2025-06-15T13:47:06.488Z","deploymentEnvironmentId":27,"name":"agent test","provider":"Agent","updated":"2025-06-15T13:47:06.488Z"}}],"project":{"accountId":2,"accountName":"appvyr","builds":[],"created":"2025-06-15T13:47:06.488Z","isPrivate":false,"name":"simple-web","projectId":22321,"repositoryName":"AppVeyor/simple-web","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{},"skipBranchesWithoutAppveyorYml":false,"slug":"simple-web","updated":"2025-06-15T13:47:06.488Z"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/ProjectDeploymentsResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get project deployments","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"},{"$ref":"#/components/parameters/recordsNumber"}]},"/projects/{accountName}/{projectSlug}/history":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-project-history"},"operationId":"getProjectHistory","parameters":[{"$ref":"#/components/parameters/recordsNumber"},{"$ref":"#/components/parameters/startBuildId"},{"$ref":"#/components/parameters/branch"}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectHistory"},"examples":{"response":{"value":{"builds":[{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":134174,"buildNumber":5,"commitId":"d19740243e3ec5497345de0f7d828e66a7cd1a6b","committed":"2025-06-15T13:47:06.488Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.488Z","finished":"2025-06-15T13:47:06.488Z","jobs":[],"message":"Enabled diag mode","messages":[],"started":"2025-06-15T13:47:06.488Z","status":"success","updated":"2025-06-15T13:47:06.488Z","version":"1.0.5"},{"authorName":"Feodor Fitsner","authorUsername":"FeodorFitsner","branch":"master","buildId":129289,"buildNumber":3,"commitId":"28c6eec932c0e21eca5bb5571a722f850aa8bf6f","committed":"2025-06-15T13:47:06.488Z","committerName":"Feodor Fitsner","committerUsername":"FeodorFitsner","created":"2025-06-15T13:47:06.488Z","finished":"2025-06-15T13:47:06.488Z","jobs":[],"message":"Added appveyor.yml","messages":[],"started":"2025-06-15T13:47:06.488Z","status":"success","updated":"2025-06-15T13:47:06.488Z","version":"1.0.3"}],"project":{"accountId":2,"accountName":"appvyr","builds":[],"created":"2025-06-15T13:47:06.488Z","isPrivate":false,"name":"wix-test","projectId":42438,"repositoryName":"FeodorFitsner/wix-test","repositoryScm":"git","repositoryType":"gitHub","skipBranchesWithoutAppveyorYml":false,"slug":"wix-test"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/ProjectHistory"}}}},"default":{"$ref":"#/components/responses/Error"}},"security":[],"summary":"Get project history","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"}]},"/projects/{accountName}/{projectSlug}/settings":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-project-settings"},"operationId":"getProjectSettings","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectSettingsResults"},"examples":{"response":{"value":{"images":[{"name":"test-win2012-r2"},{"name":"Windows Server 2012"},{"name":"Windows Server 2012 R2"}],"project":{"accountId":2,"accountName":"appvyr","builds":[],"created":"2025-06-15T13:47:06.488Z","isPrivate":false,"name":"simple-web","projectId":22321,"repositoryName":"AppVeyor/simple-web","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{"accessRightDefinitions":[{"description":"View","name":"View"},{"description":"Run build","name":"RunBuild"},{"description":"Update settings","name":"Update"},{"description":"Delete project","name":"Delete"}],"roleAces":[{"accessRights":[{"allowed":true,"name":"View"},{"allowed":true,"name":"RunBuild"},{"allowed":true,"name":"Update"},{"allowed":true,"name":"Delete"}],"isAdmin":true,"name":"Administrator","roleId":4},{"accessRights":[{"name":"View"},{"name":"RunBuild"},{"name":"Update"},{"name":"Delete"}],"isAdmin":false,"name":"User","roleId":5}]},"skipBranchesWithoutAppveyorYml":false,"slug":"simple-web","updated":"2025-06-15T13:47:06.488Z"},"settings":{"accountId":2,"accountName":"appvyr","builds":[],"configuration":{"afterBuildScripts":[],"afterDeployScripts":[],"afterTestScripts":[],"artifacts":[],"assemblyFileVersionFormat":"{version}","assemblyInfoFile":"**\\AssemblyInfo.*","assemblyInformationalVersionFormat":"{version}","assemblyVersionFormat":"{version}","beforeBuildScripts":[],"beforeDeployScripts":[],"beforeTestScripts":[],"buildMode":"msbuild","buildScripts":[],"configuration":[],"deployMode":"providers","deployScripts":[],"deployments":[],"environmentVariables":[],"environmentVariablesMatrix":[],"excludeBranches":[],"hostsEntries":[],"includeBranches":[],"initScripts":[],"installScripts":[],"matrixAllowFailures":[],"matrixFastFinish":false,"msBuildVerbosity":"minimal","notifications":[],"onBuildErrorScripts":[],"onBuildSuccessScripts":[],"operatingSystem":[],"packageAzureCloudServiceProjects":false,"packageNuGetProjects":false,"packageWebApplicationProjects":false,"packageWebApplicationProjectsXCopy":false,"patchAssemblyInfo":false,"platform":[],"services":[],"shallowClone":false,"testAssemblies":[],"testCategories":[],"testCategoriesMatrix":[],"testMode":"auto","testScripts":[]},"created":"2025-06-15T13:47:06.488Z","ignoreAppveyorYml":false,"isPrivate":false,"name":"simple-web","nextBuildNumber":41,"nuGetFeed":{"created":"2025-06-15T13:47:06.488Z","id":"simple-web-0r50wgb1st6q","name":"Project simple-web","publishingEnabled":false},"projectId":22321,"repositoryBranch":"master","repositoryName":"AppVeyor/simple-web","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{"accessRightDefinitions":[{"description":"View","name":"View"},{"description":"Run build","name":"RunBuild"},{"description":"Update settings","name":"Update"},{"description":"Delete project","name":"Delete"}],"roleAces":[{"accessRights":[{"allowed":true,"name":"View"},{"allowed":true,"name":"RunBuild"},{"allowed":true,"name":"Update"},{"allowed":true,"name":"Delete"}],"isAdmin":true,"name":"Administrator","roleId":4},{"accessRights":[{"name":"View"},{"name":"RunBuild"},{"name":"Update"},{"name":"Delete"}],"isAdmin":false,"name":"User","roleId":5}]},"skipBranchesWithoutAppveyorYml":false,"slug":"simple-web","updated":"2025-06-15T13:47:06.488Z","versionFormat":"1.0.{build}","webhookId":"k783di7br","webhookUrl":"https://ci.appveyor.com/api/github/webhook?id=k783di7br"}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/ProjectSettingsResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get project settings","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"}]},"/projects/{accountName}/{projectSlug}/settings/build-number":{"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"}],"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#update-project-build-number"},"operationId":"updateProjectBuildNumber","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProjectBuildNumberUpdate"}}},"required":true},"responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Update project build number","tags":["Project"]}},"/projects/{accountName}/{projectSlug}/settings/environment-variables":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-project-environment-variables"},"operationId":"getProjectEnvironmentVariables","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"},"examples":{"response":{"value":[{"name":"api_key","value":{"isEncrypted":true,"value":"very-secret-key-encrypted"}},{"name":"var1","value":{"isEncrypted":false,"value":"current-value"}}]}}},"application/xml":{"schema":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get project environment variables","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"}],"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#update-project-environment-variables"},"operationId":"updateProjectEnvironmentVariables","requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"}}},"required":true},"responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Update project environment variables","tags":["Project"]}},"/projects/{accountName}/{projectSlug}/settings/yaml":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#get-project-settings-in-yaml"},"operationId":"getProjectSettingsYaml","responses":{"200":{"description":"Success\n\nThe schema type of this response could be specified as `file` to\ndenote opaque binary data.  The generated Java code for `file`\nsaves the response as a temporary file, making it a little more\ndifficult to use and less efficient for common cases.  If `string`\ncauses problems for other generators, can switch to `file` type.\n","content":{"text/plain":{"schema":{"type":"string"},"examples":{"response":{"value":"version: 1.0.{build}\nbuild:\n  project: MySolution.sln\n  verbosity: minimal\n  publish_wap: true\n  ...\n"}}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get project settings in YAML","tags":["Project"]},"parameters":[{"$ref":"#/components/parameters/accountName"},{"$ref":"#/components/parameters/projectSlug"}],"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/projects-builds/#update-project-settings-in-yaml"},"operationId":"updateProjectSettingsYaml","requestBody":{"content":{"text/plain":{"schema":{"format":"binary","type":"string"}}},"description":"The body of requests should contain YAML data.  It is unclear how\nto specify this since the OpenAPI spec requires `schema` without\n`type` for `in: body` parameters and does not allow `type: file` in\n`schema`.  See https://github.com/OAI/OpenAPI-Specification/issues/326\nswagger-codegen (for Java, probably others) allows a binary\nstring body parameter with non-application/json `consumes` to be\npassed through in the request body without conversion to JSON.\n","required":true},"responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Update project settings in YAML","tags":["Project"]}},"/roles":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#get-roles"},"operationId":"getRoles","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Role"},"type":"array"},"examples":{"response":{"value":[{"created":"2025-06-15T13:47:06.488Z","isSystem":true,"name":"Administrator","roleId":4},{"created":"2025-06-15T13:47:06.488Z","isSystem":true,"name":"User","roleId":5}]}}},"application/xml":{"schema":{"items":{"$ref":"#/components/schemas/Role"},"type":"array"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get roles","tags":["Role"]},"post":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#add-role"},"operationId":"addRole","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleAddition"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleWithGroups"}},"application/xml":{"schema":{"$ref":"#/components/schemas/RoleWithGroups"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Add role","tags":["Role"]},"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#update-role"},"operationId":"updateRole","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleWithGroups"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleWithGroups"}},"application/xml":{"schema":{"$ref":"#/components/schemas/RoleWithGroups"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Update role","tags":["Role"]}},"/roles/{roleId}":{"delete":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#delete-role"},"operationId":"deleteRole","responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Delete role","tags":["Role"]},"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#get-role"},"operationId":"getRole","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleWithGroups"},"examples":{"response":{"value":{"created":"2025-06-15T13:47:06.488Z","groups":[{"name":"Projects","permissions":[{"allowed":false,"description":"Create, delete projects, update project settings","name":"ManageProjects"},{"allowed":false,"description":"Update project settings","name":"UpdateProjectSettings"},{"allowed":false,"description":"Run project builds","name":"RunProjectBuild"},{"allowed":false,"description":"Delete project builds","name":"DeleteProjectBuilds"}]},{"name":"Environments","permissions":[{"allowed":false,"description":"Create, delete projects, update environment settings","name":"ManageEnvironments"},{"allowed":false,"description":"Update environment settings","name":"UpdateEnvironmentSettings"},{"allowed":false,"description":"Deploy to environment","name":"DeployToEnvironment"}]},{"name":"Account","permissions":[{"allowed":false,"description":"Update account details","name":"UpdateAccountDetails"}]},{"name":"Users","permissions":[{"allowed":false,"description":"Add new user","name":"AddUser"},{"allowed":false,"description":"Update user details","name":"UpdateUserDetails"},{"allowed":false,"description":"Delete user","name":"DeleteUser"}]},{"name":"Roles","permissions":[{"allowed":false,"description":"Add new role","name":"AddRole"},{"allowed":false,"description":"Update role details","name":"UpdateRoleDetails"},{"allowed":false,"description":"Delete role","name":"DeleteRole"}]},{"name":"User","permissions":[{"allowed":false,"description":"Generate API keys","name":"ConfigureApiKeys"}]}],"isSystem":false,"name":"My Role","roleId":3040}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/RoleWithGroups"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get role","tags":["Role"]},"parameters":[{"$ref":"#/components/parameters/roleId"}]},"/user/join-account":{"put":{"operationId":"joinAccount","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JoinAccountRequest"}}},"required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionModel"},"examples":{"response":{"value":{"accounts":[{"accountId":2,"allowCustomBuildEnvironment":false,"blocked":false,"created":"2025-06-15T13:47:06.489Z","featureFlags":"distv2","gitHubPlan":false,"isCollaborator":true,"isEnterprisePlan":false,"isOwner":false,"manualPayments":false,"name":"NuGet","permissions":[],"planId":"free","planStart":"2025-06-15T13:47:06.489Z","planStatus":"active","roleId":5,"roleName":"User","unpaid":false,"unverified":false,"updated":"2025-06-15T13:47:06.489Z"},{"accountId":2,"allowCustomBuildEnvironment":false,"blocked":false,"created":"2025-06-15T13:47:06.489Z","featureFlags":"distv2","gitHubPlan":false,"isCollaborator":false,"isEnterprisePlan":false,"isOwner":true,"manualPayments":false,"name":"nuget","permissions":["ManageProjects","UpdateProjectSettings","RunProjectBuild","ManageEnvironments","UpdateEnvironmentSettings","DeployToEnvironment","ConfigureBuildEnvironment","UpdateAccountDetails","UpdateBillingDetails","ManageApplicationAuthorizations","AddUser","UpdateUserDetails","DeleteUser","AddRole","UpdateRoleDetails","DeleteRole"],"planId":"free","planStart":"2025-06-15T13:47:06.489Z","planStatus":"active","roleId":4,"roleName":"Administrator","unpaid":false,"unverified":false,"updated":"2025-06-15T13:47:06.489Z"}],"setupRequired":false,"twoFactorAuthRequired":false,"user":{"created":"2025-06-15T13:47:06.489Z","email":"nuget@appveyor.com","fullName":"NuGet","gitHubUsername":"nuget","gravatarHash":"142e1aa89b96190de9f4ce6569ebb421","pageSize":10,"twoFactorAuthEnabled":false,"updated":"2025-06-15T13:47:06.489Z","userId":2019}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/SessionModel"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Join Account","tags":["User"]}},"/users":{"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#get-users"},"operationId":"getUsers","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UserAccount"},"type":"array"},"examples":{"response":{"value":[{"accountId":2,"accountName":"FeodorFitsner","created":"2025-06-15T13:47:06.489Z","email":"nuget@appveyor.com","failedBuildNotification":"all","fullName":"NuGet","isCollaborator":false,"isOwner":false,"notifyWhenBuildStatusChangedOnly":true,"roleId":5,"roleName":"User","successfulBuildNotification":"all","updated":"2025-06-15T13:47:06.489Z","userId":2019}]}}},"application/xml":{"schema":{"items":{"$ref":"#/components/schemas/UserAccount"},"type":"array"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get users","tags":["User"]},"put":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#update-user"},"operationId":"updateUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserAccount"}}},"required":true},"responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Update user","tags":["User"]}},"/users/invitations":{"get":{"operationId":"getUserInvitations","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UserInvitationModel"},"type":"array"},"examples":{"response":{"value":[{"accountId":2,"accountName":"FeodorFitsner","created":"2025-06-15T13:47:06.489Z","email":"nuget@appveyor.com","roleId":5,"roleName":"User","userInvitationId":"6i9w9rcp5us7lxnbdo63"}]}}},"application/xml":{"schema":{"items":{"$ref":"#/components/schemas/UserInvitationModel"},"type":"array"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get user invitations","tags":["User"]},"post":{"operationId":"inviteUser","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InviteUserRequest"}}},"required":true},"responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Invite user","tags":["User"]}},"/users/invitations/{userInvitationId}":{"delete":{"operationId":"cancelUserInvitation","responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Cancel user invitation","tags":["User"]},"parameters":[{"$ref":"#/components/parameters/userInvitationId"}]},"/users/{userId}":{"delete":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#delete-user"},"operationId":"deleteUser","responses":{"204":{"description":"Success"},"default":{"$ref":"#/components/responses/Error"}},"summary":"Delete user","tags":["User"]},"get":{"externalDocs":{"url":"https://www.appveyor.com/docs/api/team/#get-user"},"operationId":"getUser","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserAccountRolesResults"},"examples":{"response":{"value":{"roles":[{"created":"2025-06-15T13:47:06.489Z","isSystem":true,"name":"Administrator","roleId":4},{"created":"2025-06-15T13:47:06.489Z","isSystem":true,"name":"User","roleId":5}],"user":{"accountId":2,"accountName":"FeodorFitsner","created":"2025-06-15T13:47:06.489Z","email":"nuget@appveyor.com","failedBuildNotification":"all","fullName":"NuGet","isCollaborator":false,"isOwner":false,"notifyWhenBuildStatusChangedOnly":true,"roleId":5,"roleName":"User","successfulBuildNotification":"all","updated":"2025-06-15T13:47:06.489Z","userId":2019}}}}},"application/xml":{"schema":{"$ref":"#/components/schemas/UserAccountRolesResults"}}}},"default":{"$ref":"#/components/responses/Error"}},"summary":"Get user","tags":["User"]},"parameters":[{"$ref":"#/components/parameters/userId"}]}},"servers":[{"url":"https://ci.appveyor.com/api"}],"components":{"parameters":{"accountName":{"description":"AppVeyor account name on which to operate.\nAccounts for which a user has access are listed on the [Security page of\nthe user profile](https://ci.appveyor.com/security) (when logged in).\nThe user account is also the `accountName` property of `UserAccount`.","in":"path","name":"accountName","required":true,"schema":{"type":"string","minLength":1}},"all":{"description":"Include not only `successful`, but also jobs with `failed`, and\n`cancelled` status.","in":"query","name":"all","schema":{"type":"boolean","default":false}},"artifactFileName":{"description":"File name (or path) of a build artifact file.\nCorresponds to the `fileName` property of `ArtifactModel`.\nURL-encoding of slashes in parameter values is optional.","in":"path","name":"artifactFileName","required":true,"schema":{"type":"string","minLength":1}},"badgeRepoProvider":{"description":"Repository provider supported for badges","in":"path","name":"badgeRepoProvider","required":true,"schema":{"type":"string","enum":["bitBucket","gitHub"]}},"branch":{"description":"Repository Branch","in":"query","name":"branch","schema":{"type":"string","minLength":1}},"buildBranch":{"description":"Build Branch","in":"path","name":"buildBranch","required":true,"schema":{"type":"string"}},"buildVersion":{"description":"Build Version (`version` property of `Build`)","in":"path","name":"buildVersion","required":true,"schema":{"type":"string"}},"deploymentEnvironmentId":{"description":"Deployment Environment ID (`deploymentEnvironmentId` property of `DeploymentEnvironment`)\n","in":"path","name":"deploymentEnvironmentId","required":true,"schema":{"type":"integer","minimum":0}},"deploymentId":{"description":"Deployment ID (`deploymentId` property of `Deployment`)","in":"path","name":"deploymentId","required":true,"schema":{"type":"integer","minimum":0}},"failingText":{"description":"Text to show in badge when build is failing.","in":"query","name":"failingText","schema":{"type":"string","minLength":1}},"job":{"description":"Name of the build job.","in":"query","name":"job","schema":{"type":"string"}},"jobId":{"description":"Build ID (`jobId` property of `BuildJob`)","in":"path","name":"jobId","required":true,"schema":{"type":"string"}},"passingText":{"description":"Text to show in badge when build is passing.","in":"query","name":"passingText","schema":{"type":"string","minLength":1}},"pendingText":{"description":"Text to show in badge when build is pending.","in":"query","name":"pendingText","schema":{"type":"string","minLength":1}},"pr":{"description":"Include PR builds in the search results?\n`true` - take artifact from PR builds only;\n`false` - do not look for artifact in PR builds;\ndefault/unspecified - look for artifact in both PR an non-PR builds.\n","in":"query","name":"pr","schema":{"type":"boolean"}},"projectSlug":{"description":"Project Slug","in":"path","name":"projectSlug","required":true,"schema":{"type":"string"}},"recordsNumber":{"description":"Number of results to include in the response. getProjectDeployments is documented to have a maximum of 20. It currently returns 500 Internal Server Error for recordsNumber <= 5. In the past it has returned 500 Internal Server Error for many different values which did not match the value used by the ci.appveyor.com web interface at the time.  As of 2018-09-08, the value used by the web interface is 10.","in":"query","name":"recordsNumber","required":true,"schema":{"type":"integer","minimum":0}},"repoAccountName":{"description":"Account name with repository provider","in":"path","name":"repoAccountName","required":true,"schema":{"type":"string","minLength":1}},"repoSlug":{"description":"Slug (URL component) of repository.","in":"path","name":"repoSlug","required":true,"schema":{"type":"string","minLength":1}},"retina":{"description":"Return a larger image suitable for retina displays?  Exclusive with `svg`.","in":"query","name":"retina","schema":{"type":"boolean","default":false}},"roleId":{"description":"Role ID","in":"path","name":"roleId","required":true,"schema":{"type":"integer","minimum":0}},"startBuildId":{"description":"Maximum `buildId` to include in the results (exclusive).","in":"query","name":"startBuildId","schema":{"type":"integer","minimum":0}},"statusBadgeId":{"description":"ID of the status badge (`statusBadgeId` from `ProjectWithConfiguration`).","in":"path","name":"statusBadgeId","required":true,"schema":{"type":"string","minLength":1}},"svg":{"description":"Return an SVG image instead of PNG?  Exclusive with `retina`.","in":"query","name":"svg","schema":{"type":"boolean","default":false}},"tag":{"description":"A git (or other VCS) tag","in":"query","name":"tag","schema":{"type":"string","minLength":1}},"userId":{"description":"User ID","in":"path","name":"userId","required":true,"schema":{"type":"integer","minimum":0}},"userInvitationId":{"description":"User Invitation ID","in":"path","name":"userInvitationId","required":true,"schema":{"type":"string","minLength":1}}},"responses":{"Error":{"description":"Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}},"application/xml":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"securitySchemes":{"apiToken":{"description":"API token can be acquired from https://ci.appveyor.com/api-keys\nThis value must be passed to the server in the `Authorization` header as `\"Bearer <token>\"`.  Since [bearer token authentication support is not explicitly supported in OpenAPI 2.0](https://github.com/OAI/OpenAPI-Specification/issues/583), client code will vary.  Clients created with [swagger-codegen](https://github.com/swagger-api/swagger-codegen) should set `apiKeyPrefix` to `\"Bearer\"` and set `apiKey` to the token.  Other clients may need to set `apiKey` to the string `\"Bearer <token>\"`.\nNote that this should be [fixed in OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/pull/807)), whenever that becomes available and supported.\n#### User-Level API Keys\nTo use a user-level API key (prefixed with \"v2.\"), `basePath` must be changed to `/api/account/{accountName}` where `{accountName}` is the name of the account for which requests will be made.","in":"header","name":"Authorization","type":"apiKey"}},"schemas":{"AccessRightName":{"enum":["Delete","Deploy","RunBuild","Update","View"],"type":"string"},"AceAccessRight":{"properties":{"allowed":{"description":"true to allow, false to deny, undefined to inherit","type":"boolean"},"name":{"$ref":"#/components/schemas/AccessRightName"}},"required":["name"],"type":"object"},"AceAccessRightDefinition":{"properties":{"description":{"type":"string"},"name":{"$ref":"#/components/schemas/AccessRightName"}},"required":["name"],"type":"object"},"Artifact":{"properties":{"name":{"minLength":0,"title":"Deployment name","type":"string"},"path":{"description":"Path glob of artifact files.\nNote that updateProject does not require path, but omitting path\nresults in post-build error \"Collecting artifacts... Value cannot\nbe null.  Parameter name: input\"\n","type":"string"},"type":{"$ref":"#/components/schemas/ArtifactType"}},"required":["path"],"type":"object"},"ArtifactModel":{"properties":{"created":{"format":"date-time","type":"string"},"fileName":{"type":"string"},"name":{"title":"Deployment name","type":"string"},"size":{"minimum":0,"type":"integer"},"type":{"$ref":"#/components/schemas/ArtifactType"},"url":{"description":"This property has not been observed in JSON responses, but is\npresent and nil in XML responses.\n","type":"string"}},"type":"object"},"ArtifactType":{"description":"Possible values from `Push-AppveyorArtifact` cmdlet `-Type` parameter.\n\nThe web UI only allows selection of `Auto`, `WebDeployPackage`, and\nunspecified (which it sends as the empty string but functions like\nomitting the property) for `updateProject`.\n\nAny string can be sent and will be saved/returned, but only these\nvalues have a function (as far as I am aware).","enum":["Auto","AzureCloudService","AzureCloudServiceConfig","ElasticBeanstalkPackage","File","NuGetPackage","OctopusPackage","SsdtPackage","WebDeployPackage","Zip"],"type":"string"},"Build":{"allOf":[{"$ref":"#/components/schemas/BuildLookupModel"},{"$ref":"#/components/schemas/Timestamped"},{"properties":{"authorName":{"type":"string"},"authorUsername":{"type":"string"},"buildNumber":{"minimum":0,"type":"integer"},"commitId":{"type":"string"},"committed":{"format":"date-time","type":"string"},"committerName":{"type":"string"},"committerUsername":{"type":"string"},"finished":{"format":"date-time","type":"string"},"isTag":{"type":"boolean"},"jobs":{"description":"Always empty in getProjectHistory and startDeployment responses.","items":{"$ref":"#/components/schemas/BuildJob"},"type":"array"},"messageExtended":{"type":"string"},"messages":{"items":{"$ref":"#/components/schemas/BuildMessage"},"type":"array"},"projectId":{"minimum":0,"type":"integer"},"pullRequestId":{"minimum":1,"type":"integer"},"pullRequestName":{"type":"string"},"started":{"format":"date-time","type":"string"},"status":{"$ref":"#/components/schemas/Status"}},"type":"object"}]},"BuildCloudName":{"enum":["azure-westus","gce","pro-ubuntu","pro-ubuntu18","pro-vs2013","pro-win2016","pro-vs2017","ubuntu"],"type":"string"},"BuildJob":{"allOf":[{"$ref":"#/components/schemas/Job"},{"properties":{"allowFailure":{"type":"boolean"},"artifactsCount":{"minimum":0,"type":"integer"},"compilationErrorsCount":{"minimum":0,"type":"integer"},"compilationMessagesCount":{"minimum":0,"type":"integer"},"compilationWarningsCount":{"minimum":0,"type":"integer"},"failedTestsCount":{"minimum":0,"type":"integer"},"messagesCount":{"minimum":0,"type":"integer"},"osType":{"$ref":"#/components/schemas/OSType"},"passedTestsCount":{"minimum":0,"type":"integer"},"testsCount":{"minimum":0,"type":"integer"}},"type":"object"}]},"BuildLookupModel":{"properties":{"branch":{"type":"string"},"buildId":{"minimum":0,"type":"integer"},"message":{"type":"string"},"version":{"type":"string"}},"type":"object"},"BuildMessage":{"properties":{"category":{"$ref":"#/components/schemas/BuildMessageCategory"},"created":{"format":"date-time","type":"string"},"message":{"type":"string"}},"type":"object"},"BuildMessageCategory":{"enum":["information","warning"],"type":"string"},"BuildMode":{"enum":["msbuild","none","script"],"type":"string"},"BuildNotificationFrequency":{"enum":["all","myCommits","none"],"type":"string"},"BuildStartRequest":{"example":{"accountName":"your-account-name","branch":"master","environmentVariables":{"another_var":"another value","my_var":"value"},"projectSlug":"project-slug-from-url"},"properties":{"accountName":{"minLength":1,"type":"string"},"branch":{"type":"string"},"commitId":{"type":"string"},"environmentVariables":{"additionalProperties":{"type":"string"},"type":"object"},"projectSlug":{"minLength":1,"type":"string"},"pullRequestId":{"description":"Can not be used with `branch` or `commitId`","minimum":1,"type":"integer"}},"required":["accountName","projectSlug"],"type":"object"},"BuildWorkerImage":{"properties":{"buildCloudName":{"$ref":"#/components/schemas/BuildCloudName"},"buildWorkerImageId":{"minimum":0,"type":"integer"},"name":{"$ref":"#/components/schemas/BuildWorkerImageName"},"osType":{"$ref":"#/components/schemas/OSType"}},"required":["buildWorkerImageId","name"],"type":"object"},"BuildWorkerImageName":{"description":"Defines the available build worker image templates used to provision a virtual machine for a build.  Images are updated regularly.  \"Previous\" selects the previous version of an image, for use as a temporary workaround for regressions.\n`Ubuntu` is the same as `Ubuntu1604`. `Previous Ubuntu` is the same as `Previous Ubuntu1604`.\nSee https://www.appveyor.com/docs/build-environment/#build-worker-images for details.","enum":["Previous Ubuntu","Previous Ubuntu1604","Previous Ubuntu1804","Previous Visual Studio 2013","Previous Visual Studio 2015","Previous Visual Studio 2017","Ubuntu","Ubuntu1604","Ubuntu1804","Visual Studio 2013","Visual Studio 2015","Visual Studio 2015 2","Visual Studio 2017","Visual Studio 2017 Preview","Visual Studio 2019 Preview","WMF 5","Windows Server 2019"],"type":"string"},"CollaboratorUpdate":{"description":"Technically `userId` and `roleId` have default value 0 and are not\nrequired, but since user 0 and role 0 never exist it would always cause\na 404 response.\n","example":{"roleId":3040,"userId":2018},"properties":{"roleId":{"minimum":0,"type":"integer"},"userId":{"minimum":0,"type":"integer"}},"required":["userId","roleId"],"type":"object"},"DeployMode":{"enum":["providers","none","script"],"type":"string"},"Deployment":{"allOf":[{"$ref":"#/components/schemas/DeploymentLookupModel"},{"$ref":"#/components/schemas/Timestamped"},{"properties":{"build":{"$ref":"#/components/schemas/Build"},"environment":{"$ref":"#/components/schemas/DeploymentEnvironment"},"jobs":{"items":{"$ref":"#/components/schemas/DeploymentJob"},"type":"array"}},"type":"object"}]},"DeploymentCancellation":{"example":{"deploymentId":123},"properties":{"deploymentId":{"minimum":0,"type":"integer"}},"required":["deploymentId"],"type":"object"},"DeploymentEnvironment":{"allOf":[{"$ref":"#/components/schemas/DeploymentEnvironmentLookupModel"},{"$ref":"#/components/schemas/Timestamped"},{"properties":{"accountId":{"type":"integer"},"projectsMode":{"$ref":"#/components/schemas/DeploymentProjectSelectionMode"},"securityDescriptor":{"$ref":"#/components/schemas/SecurityDescriptor"},"tags":{"description":"Comma-separated list of environment tags for dynamic grouping.\nAppears that any input is accepted.  The returned value only\ncontains case-preserving but insensitive unique values where\nspaces around \",\" are removed but otherwise preserved.  Empty\nvalues and items are allowed.","type":"string"}},"type":"object"}]},"DeploymentEnvironmentAddition":{"example":{"name":"production","provider":"FTP","settings":{"environmentVariables":[{"name":"my-var","value":{"isEncrypted":false,"value":"123"}}],"providerSettings":[{"name":"server","value":{"isEncrypted":false,"value":"ftp.myserver.com"}},{"name":"username","value":{"isEncrypted":false,"value":"ftp-user"}},{"name":"password","value":{"isEncrypted":true,"value":"password"}}]}},"properties":{"name":{"type":"string"},"provider":{"$ref":"#/components/schemas/DeploymentProviderType"},"settings":{"$ref":"#/components/schemas/DeploymentEnvironmentSettings"}},"required":["name","provider","settings"],"type":"object"},"DeploymentEnvironmentDeploymentsResults":{"properties":{"deployments":{"items":{"$ref":"#/components/schemas/EnvironmentDeploymentModel"},"type":"array"},"environment":{"$ref":"#/components/schemas/DeploymentEnvironment"}},"required":["environment","deployments"],"type":"object"},"DeploymentEnvironmentLookupModel":{"properties":{"deploymentEnvironmentId":{"minimum":0,"type":"integer"},"name":{"type":"string"},"provider":{"$ref":"#/components/schemas/DeploymentProviderType"}},"type":"object"},"DeploymentEnvironmentProject":{"properties":{"isSelected":{"type":"boolean"},"name":{"type":"string"},"projectId":{"minimum":0,"type":"integer"}},"required":["projectId","name","isSelected"],"type":"object"},"DeploymentEnvironmentSettings":{"properties":{"environmentVariables":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"},"notifications":{"items":{"$ref":"#/components/schemas/NotificationProviderSettings"},"type":"array"},"providerSettings":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"}},"type":"object"},"DeploymentEnvironmentSettingsResults":{"properties":{"environment":{"$ref":"#/components/schemas/DeploymentEnvironmentWithSettings"}},"type":"object"},"DeploymentEnvironmentWithSettings":{"allOf":[{"$ref":"#/components/schemas/DeploymentEnvironment"},{"properties":{"environmentAccessKey":{"type":"string"},"projects":{"description":"Projects available for selection in UI.\nOnly present in response from getEnvironmentSettings.\n","items":{"$ref":"#/components/schemas/DeploymentEnvironmentProject"},"type":"array"},"selectedProjects":{"description":"Project IDs of selected projects","items":{"minimum":1,"type":"integer"},"type":"array"},"settings":{"$ref":"#/components/schemas/DeploymentEnvironmentSettings"}},"type":"object"}],"example":{"deploymentEnvironmentId":3018,"environmentAccessKey":"gi3ttevuk7123","name":"production","settings":{"environmentVariables":[{"name":"my-var","value":{"isEncrypted":false,"value":"123"}}],"provider":"FTP","providerSettings":[{"name":"server","value":{"isEncrypted":false,"value":"ftp.myserver.com"}},{"name":"username","value":{"isEncrypted":false,"value":"ftp-user"}},{"name":"password","value":{"isEncrypted":true,"value":"password"}}]}}},"DeploymentJob":{"allOf":[{"$ref":"#/components/schemas/Job"},{"properties":{"messagesCount":{"minimum":0,"type":"integer"}},"type":"object"}]},"DeploymentLookupModel":{"properties":{"build":{"$ref":"#/components/schemas/BuildLookupModel"},"deploymentId":{"minimum":0,"type":"integer"},"finished":{"format":"date-time","type":"string"},"started":{"format":"date-time","type":"string"},"status":{"$ref":"#/components/schemas/Status"}},"type":"object"},"DeploymentNotificationFrequency":{"enum":["all","none"],"type":"string"},"DeploymentProjectSelectionMode":{"description":"Project selection mode for deployment environments.","enum":[0,1,2],"type":"integer","x-enum-descriptions":["Any project can be deployed to the environment.","Only selected projects can be deployed to the environment.","All projects except the selected projects can be deployed to the environment."],"x-enum-varnames":["Any","Only Selected","All Except Selected"]},"DeploymentProvider":{"properties":{"onBranch":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"onEnvironmentVariables":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"},"provider":{"$ref":"#/components/schemas/DeploymentProviderType"},"providerSettings":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"}},"required":["provider"],"type":"object"},"DeploymentProviderType":{"enum":["Agent","AzureBlob","AzureCS","AzureWebJob","BinTray","FTP","GitHub","NuGet","S3","SqlDatabase","WebDeploy","Webhook"],"type":"string"},"DeploymentStartRequest":{"example":{"accountName":"your-account-name","buildJobId":"sfke9239ydzf","buildVersion":"1.2.0","environmentName":"environment-to-deploy","environmentVariables":{"another_var":"another value","server":"myserver.com"},"projectSlug":"project-slug-from-url"},"properties":{"accountName":{"minLength":1,"type":"string"},"buildJobId":{"description":"Optional job id with artifacts if build contains multiple jobs.","type":"string"},"buildVersion":{"description":"Build to deploy","minLength":1,"type":"string"},"environmentName":{"minLength":1,"type":"string"},"environmentVariables":{"additionalProperties":{"type":"string"},"type":"object"},"projectSlug":{"minLength":1,"type":"string"}},"required":["environmentName","accountName","projectSlug","buildVersion"],"type":"object"},"EncryptRequest":{"example":{"plainValue":"encryptme"},"properties":{"plainValue":{"default":"","type":"string"}},"type":"object"},"EnvironmentDeploymentModel":{"allOf":[{"$ref":"#/components/schemas/DeploymentLookupModel"},{"properties":{"project":{"$ref":"#/components/schemas/ProjectLookupModel"}},"type":"object"}]},"Error":{"description":"Schema of object returned in 4XX and 5XX responses.\nNote:  The name is unfortunate, since it conflicts with `java.lang.Error`\nand other generic error classes.  It is the name used in XML responses,\nso it is used for consistency and possible future XML deserialization\nsupport.\n","properties":{"message":{"type":"string"},"modelState":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"description":"When present, this property is a map of property names in the format\n`request.<capitalized name>` to an `Array` of validation error\nmessage strings for the property.\n","type":"object"}},"required":["message"],"type":"object"},"FeatureFlags":{"enum":["distv2"],"type":"string"},"GroupName":{"enum":["Account","BuildEnvironment","Deny","Environments","Projects","Roles","User","Users"],"type":"string"},"GroupPermissions":{"properties":{"name":{"$ref":"#/components/schemas/GroupName"},"permissions":{"items":{"$ref":"#/components/schemas/PermissionState"},"type":"array"}},"required":["name","permissions"],"type":"object"},"HostEntry":{"properties":{"host":{"minLength":1,"type":"string"},"ip":{"minLength":1,"type":"string"}},"required":["host","ip"],"type":"object"},"HttpMethodRestricted":{"enum":["GET","POST"],"type":"string"},"InviteUserRequest":{"properties":{"email":{"format":"email","type":"string"},"roleId":{"minimum":0,"type":"integer"}},"required":["email","roleId"],"type":"object"},"Job":{"allOf":[{"$ref":"#/components/schemas/Timestamped"},{"properties":{"finished":{"format":"date-time","type":"string"},"jobId":{"type":"string"},"name":{"type":"string"},"started":{"format":"date-time","type":"string"},"status":{"$ref":"#/components/schemas/Status"}},"type":"object"}]},"JoinAccountRequest":{"properties":{"invitationId":{"minLength":1,"type":"string"}},"required":["invitationId"],"type":"object"},"MSBuildVerbosity":{"enum":["quiet","minimal","normal","detailed"],"type":"string"},"NotificationProviderSettings":{"properties":{"provider":{"$ref":"#/components/schemas/NotificationProviderType"},"settings":{"$ref":"#/components/schemas/NotificationSettings"}},"required":["provider","settings"],"type":"object"},"NotificationProviderType":{"enum":["Campfire","Email","GitHubPullRequest","HipChat","Slack","Webhook","VSOTeamRoom"],"type":"string"},"NotificationSettings":{"description":"This type is the union of the settings types for each of the various\nnotification types supported by the API.  The properties correspond to\nthe following notification types:\n\n#### All Types\n- onBuildSuccess\n- onBuildFailure\n- onBuildStatusChanged\n\n#### Campfire\n- account\n- authToken\n- room\n- template\n\n#### Email\n- subjectTemplate\n- bodyTemplate\n- recipients\n- recipientsValue\n\n#### GitHubPullRequest\n- authToken\n- template\n\n#### HipChat\n- authToken\n- from\n- room\n- template\n- serverUrl\n\n#### Slack\n- incomingWebhookUrl\n- authToken\n- channel\n- template\n\n#### Webhook\n- method\n- url\n- headers\n- headersValue\n- addCustomRequestBody\n- customRequestBodyContentType\n- customRequestBody\n\n#### VSOTeamRoom\n- vsoAccount\n- username\n- password\n- room\n- template\n","properties":{"$type":{"$ref":"#/components/schemas/NotificationSettingsType"},"account":{"type":"string"},"addCustomRequestBody":{"type":"boolean"},"authToken":{"$ref":"#/components/schemas/StoredValue"},"bodyTemplate":{"type":"string"},"channel":{"type":"string"},"customRequestBody":{"type":"string"},"customRequestBodyContentType":{"type":"string"},"from":{"type":"string"},"headers":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"},"headersValue":{"type":"string"},"incomingWebhookUrl":{"format":"uri","type":"string"},"method":{"$ref":"#/components/schemas/HttpMethodRestricted"},"onBuildFailure":{"type":"boolean"},"onBuildStatusChanged":{"type":"boolean"},"onBuildSuccess":{"type":"boolean"},"password":{"$ref":"#/components/schemas/StoredValue"},"recipients":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"recipientsValue":{"type":"string"},"room":{"type":"string"},"serverUrl":{"format":"uri","type":"string"},"subjectTemplate":{"type":"string"},"template":{"type":"string"},"url":{"format":"uri","type":"string"},"username":{"type":"string"},"vsoAccount":{"type":"string"}},"type":"object"},"NotificationSettingsType":{"enum":["Appveyor.Models.CampfireNotificationSettings, Appveyor.Models","Appveyor.Models.EmailNotificationSettings, Appveyor.Models","Appveyor.Models.GitHubPullRequestNotificationSettings, Appveyor.Models","Appveyor.Models.HipChatNotificationSettings, Appveyor.Models","Appveyor.Models.SlackNotificationSettings, Appveyor.Models","Appveyor.Models.WebhookNotificationSettings, Appveyor.Models","Appveyor.Models.VSOTeamRoomNotificationSettings, Appveyor.Models"],"type":"string"},"NuGetFeed":{"allOf":[{"$ref":"#/components/schemas/Timestamped"},{"properties":{"accountId":{"minimum":0,"type":"integer"},"id":{"type":"string"},"isPrivateProject":{"type":"boolean"},"name":{"type":"string"},"nuGetFeedId":{"type":"integer"},"projectId":{"minimum":0,"type":"integer"},"publishingEnabled":{"type":"boolean"}},"type":"object"}]},"OSServiceName":{"enum":["iis","mongodb","msmq","mssql2008r2sp2","mssql2008r2sp2rs","mssql2012sp1","mssql2012sp1rs","mssql2014","mssql2014rs","mssql2016","mysql","postgresql"],"type":"string"},"OSType":{"enum":["Ubuntu","Windows"],"type":"string"},"PermissionName":{"description":"Available permission names.  The names correspond to the following groups:\n#### AccountPermission\n- ManageApplicationAuthorizations\n- UpdateAccountDetails\n- UpdateBillingDetails\n#### BuildEnvironmentPermission\n- ConfigureBuildEnvironment\n#### DenyPermission\n- DenyAllProjectsEnvironments\n#### EnvironmentsPermission\n- DeployToEnvironment\n- ManageEnvironments\n- UpdateEnvironmentSettings\n#### ProjectsPermission\n- ManageProjects\n- RunProjectBuild\n- UpdateProjectSettings\n#### RolesPermission\n- AddRole\n- DeleteRole\n- UpdateRoleDetails\n#### UserPermission\n- ConfigureApiKeys\n#### UsersPermission\n- AddUser\n- DeleteUser\n- UpdateUserDetails\n","enum":["ManageApplicationAuthorizations","UpdateAccountDetails","UpdateBillingDetails","ConfigureBuildEnvironment","DenyAllProjectsEnvironments","DeployToEnvironment","ManageEnvironments","UpdateEnvironmentSettings","ManageProjects","RunProjectBuild","UpdateProjectSettings","AddRole","DeleteRole","UpdateRoleDetails","ConfigureApiKeys","AddUser","DeleteUser","UpdateUserDetails"],"type":"string"},"PermissionState":{"properties":{"allowed":{"description":"State of the named permission.  `true` to allow, `false` to deny,\nmissing to inherit.\n","type":"boolean"},"description":{"type":"string"},"name":{"$ref":"#/components/schemas/PermissionName"}},"required":["name"],"type":"object"},"PlanName":{"enum":["free"],"type":"string"},"PlanStatus":{"enum":["active"],"type":"string"},"PlatformName":{"enum":["ARM","Any CPU","x64","x86"],"type":"string"},"Project":{"allOf":[{"$ref":"#/components/schemas/ProjectLookupModel"},{"$ref":"#/components/schemas/Timestamped"},{"properties":{"accountId":{"minimum":0,"readOnly":true,"type":"integer"},"alwaysBuildClosedPullRequests":{"type":"boolean"},"builds":{"description":"Only non-empty for response from getProjects.","items":{"$ref":"#/components/schemas/Build"},"readOnly":true,"type":"array"},"currentBuildId":{"minimum":0,"type":"integer"},"disablePullRequestWebhooks":{"type":"boolean"},"disablePushWebhooks":{"type":"boolean"},"enableDeploymentInPullRequests":{"type":"boolean"},"enableSecureVariablesInPullRequests":{"type":"boolean"},"enableSecureVariablesInPullRequestsFromSameRepo":{"type":"boolean"},"isGitHubApp":{"type":"boolean"},"isPrivate":{"type":"boolean"},"nuGetFeed":{"$ref":"#/components/schemas/NuGetFeed"},"repositoryBranch":{"description":"Not present in response from addProject.","type":"string"},"repositoryName":{"type":"string"},"repositoryScm":{"$ref":"#/components/schemas/RepositoryScm"},"repositoryType":{"$ref":"#/components/schemas/RepositoryProvider"},"rollingBuilds":{"type":"boolean"},"rollingBuildsDoNotCancelRunningBuilds":{"type":"boolean"},"rollingBuildsOnlyForPullRequests":{"type":"boolean"},"saveBuildCacheInPullRequests":{"type":"boolean"},"securityDescriptor":{"$ref":"#/components/schemas/SecurityDescriptor"},"skipBranchesWithoutAppveyorYml":{"type":"boolean"},"tags":{"description":"Comma-separated list of project tags for dynamic grouping.\nAppears that any input is accepted.  The returned value only\ncontains case-preserving but insensitive unique values where\nspaces around \",\" are removed but otherwise preserved.  Empty\nvalues and items are allowed.","type":"string"}},"required":["repositoryName"],"type":"object"}]},"ProjectAddition":{"description":"`repositoryAuthentication` is only used for git, mercurial, subversion `repositoryProvider`.","example":{"repositoryName":"FeodorFitsner/demo-app","repositoryProvider":"gitHub"},"properties":{"repositoryAuthentication":{"$ref":"#/components/schemas/RepositoryAuthenticationType"},"repositoryName":{"description":"URL when repositoryProvider is git, mercurial, subversion username/project when repositoryProvider is gitHub","minLength":1,"type":"string"},"repositoryPassword":{"description":"Required if repositoryAuthentication is credentials","format":"password","type":"string"},"repositoryProvider":{"$ref":"#/components/schemas/RepositoryProvider"},"repositoryUsername":{"description":"Required if repositoryAuthentication is credentials","type":"string"}},"required":["repositoryProvider","repositoryName"],"type":"object"},"ProjectBranchesMode":{"enum":["exclude","include"],"type":"string"},"ProjectBuildNumberUpdate":{"example":{"nextBuildNumber":35},"properties":{"nextBuildNumber":{"minimum":0,"type":"integer"}},"required":["nextBuildNumber"],"type":"object"},"ProjectBuildResults":{"properties":{"build":{"$ref":"#/components/schemas/Build"},"project":{"$ref":"#/components/schemas/Project"}},"type":"object"},"ProjectConfiguration":{"properties":{"afterBuildScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"afterDeployScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"afterTestScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"artifacts":{"items":{"$ref":"#/components/schemas/Artifact"},"type":"array"},"assemblyFileVersionFormat":{"type":"string"},"assemblyInfoFile":{"type":"string"},"assemblyInformationalVersionFormat":{"type":"string"},"assemblyVersionFormat":{"type":"string"},"beforeBuildScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"beforeDeployScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"beforePackageScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"beforeTestScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"branchesMode":{"$ref":"#/components/schemas/ProjectBranchesMode"},"buildCloud":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"buildMode":{"$ref":"#/components/schemas/BuildMode"},"buildScripts":{"description":"Only set/used when `buildMode` is `script`.","items":{"$ref":"#/components/schemas/Script"},"type":"array"},"cacheEntries":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"cloneDepth":{"minimum":1,"type":"integer"},"cloneFolder":{"type":"string"},"cloneScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"configuration":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"configureNuGetAccountSource":{"type":"boolean"},"configureNuGetProjectSource":{"type":"boolean"},"deployMode":{"$ref":"#/components/schemas/DeployMode"},"deployScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"deployments":{"items":{"$ref":"#/components/schemas/DeploymentProvider"},"type":"array"},"disableNuGetPublishForOctopusPackages":{"type":"boolean"},"disableNuGetPublishOnPullRequests":{"type":"boolean"},"doNotIncrementBuildNumberOnPullRequests":{"type":"boolean"},"dotnetCsprojAssemblyVersionFormat":{"type":"string"},"dotnetCsprojFile":{"type":"string"},"dotnetCsprojFileVersionFormat":{"type":"string"},"dotnetCsprojInformationalVersionFormat":{"type":"string"},"dotnetCsprojPackageVersionFormat":{"type":"string"},"dotnetCsprojVersionFormat":{"type":"string"},"environmentVariables":{"items":{"$ref":"#/components/schemas/StoredNameValue"},"type":"array"},"environmentVariablesMatrix":{"items":{"$ref":"#/components/schemas/StoredNameValueMatrix"},"type":"array"},"excludeBranches":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"forceHttpsClone":{"type":"boolean"},"hostsEntries":{"items":{"$ref":"#/components/schemas/HostEntry"},"type":"array"},"hotFixScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"includeBranches":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"includeNuGetReferences":{"type":"boolean"},"initScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"installScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"matrixAllowFailures":{"description":"Although the names and values are not enforced, the combinations which are meaningful are documented at https://www.appveyor.com/docs/build-configuration/#allow-failing-jobs","items":{"$ref":"#/components/schemas/StoredNameValueMatrix"},"type":"array"},"matrixExcept":{"items":{"$ref":"#/components/schemas/StoredNameValueMatrix"},"type":"array"},"matrixExclude":{"items":{"$ref":"#/components/schemas/StoredNameValueMatrix"},"type":"array"},"matrixFastFinish":{"type":"boolean"},"matrixOnly":{"items":{"$ref":"#/components/schemas/StoredNameValueMatrix"},"type":"array"},"maxJobs":{"minimum":1,"type":"integer"},"msBuildInParallel":{"type":"boolean"},"msBuildProjectFileName":{"type":"string"},"msBuildVerbosity":{"$ref":"#/components/schemas/MSBuildVerbosity"},"notifications":{"items":{"$ref":"#/components/schemas/NotificationProviderSettings"},"type":"array"},"onBuildErrorScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"onBuildFinishScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"onBuildSuccessScripts":{"items":{"$ref":"#/components/schemas/Script"},"type":"array"},"onlyCommitsFiles":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"operatingSystem":{"items":{"properties":{"value":{"$ref":"#/components/schemas/BuildWorkerImageName"}},"required":["value"],"type":"object"},"title":"Build worker image","type":"array"},"packageAspNetCoreProjects":{"type":"boolean"},"packageAzureCloudServiceProjects":{"type":"boolean"},"packageDotnetConsoleProjects":{"type":"boolean"},"packageNuGetProjects":{"type":"boolean"},"packageNuGetSymbols":{"type":"boolean"},"packageWebApplicationProjects":{"type":"boolean"},"packageWebApplicationProjectsBeanstalk":{"type":"boolean"},"packageWebApplicationProjectsOctopus":{"type":"boolean"},"packageWebApplicationProjectsXCopy":{"type":"boolean"},"patchAssemblyInfo":{"type":"boolean"},"patchDotnetCsproj":{"type":"boolean"},"platform":{"items":{"properties":{"value":{"$ref":"#/components/schemas/PlatformName"}},"required":["value"],"type":"object"},"type":"array"},"services":{"items":{"properties":{"value":{"$ref":"#/components/schemas/OSServiceName"}},"required":["value"],"type":"object"},"title":"OS services to start during the build process","type":"array"},"shallowClone":{"type":"boolean"},"skipBranchWithPullRequests":{"type":"boolean"},"skipCommitsFiles":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"skipNonTags":{"type":"boolean"},"skipTags":{"type":"boolean"},"stacks":{"items":{"$ref":"#/components/schemas/UnknownType"},"maxItems":0,"type":"array"},"testAssemblies":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"testCategories":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"testCategoriesMatrix":{"items":{"properties":{"categories":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"}},"type":"object"},"type":"array"},"testCategoriesMode":{"enum":["exclude","include"],"type":"string"},"testMode":{"$ref":"#/components/schemas/TestMode"},"testScripts":{"description":"Only set/used when `testMode` is `script`.","items":{"$ref":"#/components/schemas/Script"},"type":"array"},"xamarinRegisterAndroidProduct":{"type":"boolean"},"xamarinRegisterIosProduct":{"type":"boolean"}},"type":"object"},"ProjectDeployment":{"properties":{"deployment":{"$ref":"#/components/schemas/Deployment"},"project":{"$ref":"#/components/schemas/Project"}},"required":["project","deployment"],"type":"object"},"ProjectDeploymentModel":{"allOf":[{"$ref":"#/components/schemas/DeploymentLookupModel"},{"properties":{"environment":{"$ref":"#/components/schemas/DeploymentEnvironmentLookupModel"}},"type":"object"}]},"ProjectDeploymentsResults":{"properties":{"deployments":{"items":{"$ref":"#/components/schemas/ProjectDeploymentModel"},"type":"array"},"project":{"$ref":"#/components/schemas/Project"}},"type":"object"},"ProjectHistory":{"properties":{"builds":{"items":{"$ref":"#/components/schemas/Build"},"type":"array"},"project":{"$ref":"#/components/schemas/Project"}},"type":"object"},"ProjectLookupModel":{"properties":{"accountName":{"readOnly":true,"type":"string"},"name":{"type":"string"},"projectId":{"minimum":0,"type":"integer"},"slug":{"readOnly":true,"type":"string"}},"required":["projectId"],"type":"object"},"ProjectSettingsResults":{"example":{"build":{"project":"MySolution.sln","publish_wap":true,"verbosity":"minimal"},"version":"1.0.{build}"},"properties":{"buildClouds":{"items":{"$ref":"#/components/schemas/StringValueObject"},"type":"array"},"defaultImageName":{"type":"string"},"images":{"items":{"$ref":"#/components/schemas/BuildWorkerImage"},"type":"array"},"project":{"$ref":"#/components/schemas/Project"},"settings":{"$ref":"#/components/schemas/ProjectWithConfiguration"}},"type":"object"},"ProjectWithConfiguration":{"allOf":[{"$ref":"#/components/schemas/Project"},{"example":{"accountId":2,"accountName":"appvyr","builds":[],"configuration":{"afterBuildScripts":[],"afterDeployScripts":[],"afterTestScripts":[],"artifacts":[],"assemblyFileVersionFormat":"{version}","assemblyInfoFile":"**\\AssemblyInfo.*","assemblyInformationalVersionFormat":"{version}","assemblyVersionFormat":"{version}","beforeBuildScripts":[],"beforeDeployScripts":[],"beforeTestScripts":[],"buildMode":"msbuild","buildScripts":[],"configuration":[],"deployMode":"providers","deployScripts":[],"deployments":[],"environmentVariables":[],"environmentVariablesMatrix":[],"excludeBranches":[],"hostsEntries":[],"includeBranches":[],"initScripts":[],"installScripts":[],"matrixAllowFailures":[],"matrixFastFinish":false,"msBuildVerbosity":"minimal","notifications":[],"onBuildErrorScripts":[],"onBuildSuccessScripts":[],"operatingSystem":[],"packageAzureCloudServiceProjects":false,"packageNuGetProjects":false,"packageWebApplicationProjects":false,"packageWebApplicationProjectsXCopy":false,"patchAssemblyInfo":false,"platform":[],"services":[],"shallowClone":false,"testAssemblies":[],"testCategories":[],"testCategoriesMatrix":[],"testMode":"auto","testScripts":[]},"created":"2025-06-15T13:47:06.490Z","ignoreAppveyorYml":false,"isPrivate":false,"name":"demo-app","nextBuildNumber":1,"nuGetFeed":{"created":"2025-06-15T13:47:06.490Z","id":"demo-app-tw5iw2wk3bl1","name":"Project demo-app","publishingEnabled":false},"projectId":43682,"repositoryBranch":"master","repositoryName":"FeodorFitsner/demo-app","repositoryScm":"git","repositoryType":"gitHub","securityDescriptor":{"accessRightDefinitions":[{"description":"View","name":"View"},{"description":"Run build","name":"RunBuild"},{"description":"Update settings","name":"Update"},{"description":"Delete project","name":"Delete"}],"roleAces":[{"accessRights":[{"allowed":true,"name":"View"},{"allowed":true,"name":"RunBuild"},{"allowed":true,"name":"Update"},{"allowed":true,"name":"Delete"}],"isAdmin":true,"name":"Administrator","roleId":4},{"accessRights":[{"name":"View"},{"name":"RunBuild"},{"name":"Update"},{"name":"Delete"}],"isAdmin":false,"name":"User","roleId":5}]},"skipBranchesWithoutAppveyorYml":false,"slug":"demo-app-335","versionFormat":"1.0.{build}","webhookId":"rca5vb5qqu","webhookUrl":"https://ci.appveyor.com/api/github/webhook?id=rca5vb5qqu"},"properties":{"buildPriority":{"minimum":1,"type":"integer"},"configuration":{"$ref":"#/components/schemas/ProjectConfiguration"},"customYmlName":{"type":"string"},"ignoreAppveyorYml":{"type":"boolean"},"nextBuildNumber":{"type":"integer"},"repositoryAuthentication":{"$ref":"#/components/schemas/RepositoryAuthenticationType"},"repositoryUsername":{"type":"string"},"scheduleCrontabExpression":{"description":"Build schedule as an NCrontab Expression.  See https://github.com/atifaziz/NCrontab/wiki/Crontab-Expression","externalDocs":{"url":"https://www.appveyor.com/docs/build-configuration/#scheduled-builds"},"type":"string"},"sshPublicKey":{"type":"string"},"statusBadgeId":{"type":"string"},"versionFormat":{"minLength":7,"pattern":"[{]build[}]","type":"string"},"webhookId":{"type":"string"},"webhookUrl":{"format":"uri","type":"string"}},"required":["versionFormat","configuration"],"type":"object"}],"type":"object"},"ReRunBuildRequest":{"example":{"buildId":23864,"reRunIncomplete":true},"properties":{"buildId":{"minimum":0,"type":"integer"},"reRunIncomplete":{"description":"Set `reRunIncomplete` set to `false` (default value) for full build re-run. Set it set to `true` to rerun only failed or cancelled jobs in multijob build.","type":"boolean"}},"required":["buildId"],"type":"object"},"RepositoryAuthenticationType":{"enum":["credentials","ssh"],"type":"string"},"RepositoryProvider":{"enum":["bitBucket","git","gitHub","gitLab","kiln","mercurial","stash","subversion","vso"],"type":"string"},"RepositoryScm":{"enum":["git","mercurial","subversion"],"type":"string"},"Role":{"allOf":[{"$ref":"#/components/schemas/Timestamped"},{"properties":{"isSystem":{"readOnly":true,"type":"boolean"},"name":{"minLength":1,"type":"string"},"roleId":{"minimum":0,"type":"integer"}},"required":["roleId","name"],"type":"object"}],"description":"Technically `roleId` has default value 0 and is not required, but\nsince role 0 never exists it would always cause a 404 response.\n"},"RoleAce":{"properties":{"accessRights":{"items":{"$ref":"#/components/schemas/AceAccessRight"},"type":"array"},"isAdmin":{"type":"boolean"},"name":{"type":"string"},"roleId":{"minimum":0,"type":"integer"}},"type":"object"},"RoleAddition":{"example":{"name":"My Role"},"properties":{"name":{"minLength":1,"type":"string"}},"required":["name"],"type":"object"},"RoleWithGroups":{"allOf":[{"$ref":"#/components/schemas/Role"},{"properties":{"groups":{"items":{"$ref":"#/components/schemas/GroupPermissions"},"type":"array"}},"type":"object"}],"example":{"created":"2025-06-15T13:47:06.490Z","groups":[{"name":"Deny","permissions":[{"allowed":false,"description":"Deny all projects and environments, unless explicitly allowed","name":"DenyAllProjectsEnvironments"}]},{"name":"Projects","permissions":[{"allowed":true,"description":"Create, delete projects, update project settings","name":"ManageProjects"},{"allowed":true,"description":"Update project settings","name":"UpdateProjectSettings"},{"allowed":false,"description":"Run project builds","name":"RunProjectBuild"},{"allowed":false,"description":"Delete project builds","name":"DeleteProjectBuilds"}]},{"name":"Environments","permissions":[{"allowed":false,"description":"Create, delete projects, update environment settings","name":"ManageEnvironments"},{"allowed":false,"description":"Update environment settings","name":"UpdateEnvironmentSettings"},{"allowed":false,"description":"Deploy to environment","name":"DeployToEnvironment"}]},{"name":"Account","permissions":[{"allowed":false,"description":"Update account details","name":"UpdateAccountDetails"}]},{"name":"Users","permissions":[{"allowed":false,"description":"Add new user","name":"AddUser"},{"allowed":false,"description":"Update user details","name":"UpdateUserDetails"},{"allowed":false,"description":"Delete user","name":"DeleteUser"}]},{"name":"Roles","permissions":[{"allowed":false,"description":"Add new role","name":"AddRole"},{"allowed":false,"description":"Update role details","name":"UpdateRoleDetails"},{"allowed":false,"description":"Delete role","name":"DeleteRole"}]},{"name":"User","permissions":[{"allowed":false,"description":"Generate API keys","name":"ConfigureApiKeys"}]}],"isSystem":false,"name":"My Role","roleId":3040}},"Script":{"properties":{"language":{"$ref":"#/components/schemas/ScriptLanguage"},"script":{"type":"string"}},"required":["script"],"type":"object"},"ScriptLanguage":{"enum":["cmd","ps","pwsh","sh"],"type":"string","x-enum-descriptions":["Command Prompt/Batch Script/cmd.exe","PowerShell","PowerShell Core","POSIX shell"]},"SecurityDescriptor":{"properties":{"accessRightDefinitions":{"items":{"$ref":"#/components/schemas/AceAccessRightDefinition"},"type":"array"},"roleAces":{"items":{"$ref":"#/components/schemas/RoleAce"},"type":"array"}},"type":"object"},"SessionModel":{"properties":{"accounts":{"items":{"$ref":"#/components/schemas/SessionUserAccountModel"},"type":"array"},"setupRequired":{"type":"boolean"},"twoFactorAuthRequired":{"type":"boolean"},"user":{"$ref":"#/components/schemas/SessionUserModel"}},"type":"object"},"SessionUserAccountModel":{"allOf":[{"$ref":"#/components/schemas/Timestamped"},{"properties":{"accountId":{"minimum":0,"readOnly":true,"type":"integer"},"allowCustomBuildEnvironment":{"type":"boolean"},"blocked":{"type":"boolean"},"featureFlags":{"$ref":"#/components/schemas/FeatureFlags"},"gitHubPlan":{"type":"boolean"},"gitHubPlanOrg":{"type":"string"},"isCollaborator":{"readOnly":true,"type":"boolean"},"isEnterprisePlan":{"type":"boolean"},"isOwner":{"readOnly":true,"type":"boolean"},"manualPayments":{"type":"boolean"},"name":{"readOnly":true,"type":"string"},"permissions":{"items":{"$ref":"#/components/schemas/PermissionName"},"type":"array"},"planEnd":{"format":"date-time","readOnly":true,"type":"string"},"planId":{"$ref":"#/components/schemas/PlanName"},"planStart":{"format":"date-time","readOnly":true,"type":"string"},"planStatus":{"$ref":"#/components/schemas/PlanStatus"},"roleId":{"minimum":0,"type":"integer"},"roleName":{"readOnly":true,"type":"string"},"timeZoneId":{"type":"string"},"unpaid":{"type":"boolean"},"unverified":{"type":"boolean"}},"type":"object"}]},"SessionUserModel":{"allOf":[{"$ref":"#/components/schemas/Timestamped"},{"properties":{"bitBucketUsername":{"type":"string"},"email":{"format":"email","type":"string"},"fullName":{"type":"string"},"gitHubUsername":{"type":"string"},"gitLabUserId":{"type":"string"},"gravatarHash":{"type":"string"},"pageSize":{"minimum":0,"readOnly":true,"type":"integer"},"twoFactorAuthEnabled":{"type":"boolean"},"userId":{"minimum":0,"readOnly":true,"type":"integer"},"vsoUsername":{"type":"string"}},"required":["userId","email"],"type":"object"}]},"Status":{"enum":["cancelled","cancelling","failed","queued","running","starting","success"],"type":"string"},"StoredNameValue":{"properties":{"name":{"minLength":1,"type":"string"},"value":{"$ref":"#/components/schemas/StoredValue"}},"required":["name","value"],"type":"object"},"StoredNameValueMatrix":{"properties":{"variables":{"$ref":"#/components/schemas/StoredNameValue"}},"type":"object"},"StoredValue":{"properties":{"isEncrypted":{"type":"boolean"},"value":{"description":"Encrypted values can be created using the encryptValue operation.\n\nEmpty environment variables are represented by missing (null) value\nrather than an empty string.","type":"string"}},"type":"object"},"StringValueObject":{"properties":{"value":{"type":"string"}},"type":"object"},"TestMode":{"enum":["auto","none","script"],"type":"string"},"Timestamped":{"properties":{"created":{"format":"date-time","readOnly":true,"type":"string"},"updated":{"format":"date-time","readOnly":true,"type":"string"}},"type":"object"},"UnknownType":{"description":"A schema for values which have an undocumented/unknown type.\n\nAlthough the type of such values could be left unspecified according to\nJSON Schema (and by extension OpenAPI 2.0), such unspecified types cause\ntool failures (e.g. swagger-codegen).  So this type can be used as a\nplaceholder to prevent errors and document the behavior.\n","enum":["unknown"],"type":"string"},"UserAccount":{"allOf":[{"$ref":"#/components/schemas/Timestamped"},{"properties":{"accountId":{"minimum":0,"readOnly":true,"type":"integer"},"accountName":{"readOnly":true,"type":"string"},"email":{"format":"email","type":"string"},"fullName":{"type":"string"},"isCollaborator":{"readOnly":true,"type":"boolean"},"isOwner":{"readOnly":true,"type":"boolean"},"pageSize":{"minimum":0,"readOnly":true,"type":"integer"},"password":{"format":"password","minLength":1,"type":"string"},"roleId":{"minimum":0,"type":"integer"},"roleName":{"readOnly":true,"type":"string"},"twoFactorAuthEnabled":{"type":"boolean"},"userId":{"minimum":0,"type":"integer"}},"required":["fullName","email"],"type":"object"}],"example":{"email":"john@smith.com","failedBuildNotification":"all","fullName":"John Smith","notifyWhenBuildStatusChangedOnly":true,"roleId":4,"successfulBuildNotification":"all","userId":3019}},"UserAccountRolesResults":{"description":"The roles property contains all roles, not only the role for which the user is a member.","properties":{"roles":{"items":{"$ref":"#/components/schemas/Role"},"type":"array"},"user":{"$ref":"#/components/schemas/UserAccount"}},"type":"object"},"UserAccountSettings":{"properties":{"failedBuildNotification":{"$ref":"#/components/schemas/BuildNotificationFrequency"},"failedDeploymentNotification":{"$ref":"#/components/schemas/DeploymentNotificationFrequency"},"notifyWhenBuildStatusChangedOnly":{"default":false,"description":"Note that this value is `true` on user creation, but behaves as\n`false` when not specified on update.\n","type":"boolean"},"notifyWhenDeploymentStatusChangedOnly":{"default":false,"description":"Note that this value is `true` on user creation, but behaves as\n`false` when not specified on update.\n","type":"boolean"},"successfulBuildNotification":{"$ref":"#/components/schemas/BuildNotificationFrequency"},"successfulDeploymentNotification":{"$ref":"#/components/schemas/DeploymentNotificationFrequency"}},"required":["successfulBuildNotification","failedBuildNotification","successfulDeploymentNotification","failedDeploymentNotification"],"type":"object"},"UserInvitationModel":{"properties":{"accountId":{"readOnly":true,"type":"integer"},"accountName":{"readOnly":true,"type":"string"},"created":{"format":"date-time","readOnly":true,"type":"string"},"email":{"format":"email","type":"string"},"roleId":{"minimum":0,"type":"integer"},"roleName":{"readOnly":true,"type":"string"},"userInvitationId":{"minLength":1,"readOnly":true,"type":"string"}},"required":["userInvitationId","email","roleId","accountId","created"],"type":"object"}}}}