Skip to main content

 

 

 

 

Template:OutSystems/Documentation_KB/Breadcrumb_New_Layout

 

 

Template:OutSystems/OSLanguageSwitcher

 

 

 

OutSystems

LifeTime API v2

Template:OutSystems/Documentation_KB/ContentCollaboration
  • Edit
    Collaborate with us
    Edit this page on GitHub
  • The LifeTime API allows you to manage applications, modules, environments and deployments of your OutSystems infrastructure. Version 2 of the API adds support for deployment zones, users, teams, and roles.

    Follow the guidelines presented in REST API Authentication to authenticate your API requests.

    Check LifeTime API Examples to learn how to perform common tasks using the LifeTime API.

    You can find the Swagger file for LifeTime API v2 in the Downloads area, inside the detail page of each LifeTime Management Console version.

    Summary

    Base URL
    /lifetimeapi/rest/v2
    Version
    v2
    Scheme
    https

    /applications

    Endpoint Description
    GET /applications/ Returns a list of applications that exist in the infrastructure.
    GET /applications/{ApplicationKey}/ Returns the details of a given application.
    GET /applications/{ApplicationKey}/versions/ Returns a list of versions of a given application.
    DELETE /applications/{ApplicationKey}/versions/{VersionKey}/ Discards an application version, if possible. Running versions, or versions used in Deployments cannot be deleted.
    GET /applications/{ApplicationKey}/versions/{VersionKey}/ Returns the details of a given version of the specified application.
    GET /applications/{ApplicationKey}/versions/{VersionKey}/content/ Returns a link where the binary file for a given application version can be downloaded. The link will expire in 60 minutes.

    /environments

    Endpoint Description
    GET /environments/ Lists all the environments in the infrastructure.
    GET /environments/{EnvironmentKey}/ Returns the details of a given environment.
    GET /environments/{EnvironmentKey}/applications/ Returns information about the running versions of all applications in a given environment.
    POST /environments/{EnvironmentKey}/applications/ Creates a new application in the environment.
    GET /environments/{EnvironmentKey}/applications/{ApplicationKey}/ Returns information about the running version of the specified application in a given environment.
    GET /environments/{EnvironmentKey}/applications/{ApplicationKey}/content/ Returns a link where the binary file for a given application can be downloaded. The link will expire in 60 minutes.
    POST /environments/{EnvironmentKey}/applications/{ApplicationKey}/versions/ Creates a new version of the application based on the current running application.
    GET /environments/{EnvironmentKey}/deploymentzones/ Returns information about the deployment zones available in a given environment.
    GET /environments/{EnvironmentKey}/templates/ Returns information about the templates available in a given environment.

    /deployments

    Endpoint Description
    POST /deployments/ Creates a deployment to a target environment. An optional list of applications to include in the deployment can be specified. The input is a subset of deployment object.
    GET /deployments/ Returns a list of deployments ordered by creation date, from newest to oldest.
    DELETE /deployments/{DeploymentKey}/ Discards a deployment, if possible. Only deployments whose state is “saved” can be deleted.
    PUT /deployments/{DeploymentKey}/ Updates a given deployment. An optional list of applications to include in the deployment can be specified. The input is a subset of deployment object.
    GET /deployments/{DeploymentKey}/ Returns the details of a given deployment. The returned information contains the included applications and the possible conflicts that can arise from the deployment of the current applications.
    POST /deployments/{DeploymentKey}/{Command}/ Executes the given command in a specified deployment. The allowed commands are “start”, “continue” and “abort”.
    GET /deployments/{DeploymentKey}/status/ Returns the details of a given deployment execution, including the deployment status and messages.

    /modules

    Endpoint Description
    GET /modules/ Returns a list of modules that exist in the infrastructure.
    GET /modules/{ModuleKey}/ Returns the details of a given module.
    GET /modules/{ModuleKey}/versions/ Returns a list of versions of a given module.
    GET /modules/{ModuleKey}/versions/{ModuleVersionKey}/ Returns the details of a given module version.

    /roles

    Endpoint Description
    GET /roles/ Lists all the roles.
    POST /roles/ Creates a role with the specified permissions.
    GET /roles/{RoleKey}/ Returns the details of a given role.
    PUT /roles/{RoleKey}/ Updates a role with the specified permissions.
    DELETE /roles/{RoleKey}/ Deletes a role.
    GET /roles/permissionlevels/ Gets available permission levels.

    /teams

    Endpoint Description
    GET /teams/ Lists all the teams.
    POST /teams/ Creates a team with the specified details. The operation only creates the team. Users and Applications should be associated using specific endpoints.
    GET /teams/{TeamKey}/ Returns the details of a given team.
    PUT /teams/{TeamKey}/ Updates a team with the specified details. The operation only affects the Team details. Users and Applications should be associated or dissociated using specific endpoints.
    DELETE /teams/{TeamKey}/ Deletes a team.
    POST /teams/{TeamKey}/applications/ Adds the specified application to a given team. The operation adds an existing application to the team. To create a new application, use POST /environments/{EnvironmentKey}/applications/.
    DELETE /teams/{TeamKey}/applications/{ApplicationKey} Removes application from the given team.
    POST /teams/{TeamKey}/users/ Adds a user to a team with a specified role.
    DELETE /teams/{TeamKey}/users/{UserKey}/ Removes a user from the given team.

    /users

    Endpoint Description
    GET /users/ Lists all the users. By default shows only active users.
    POST /users/ Creates a user with the specified details. The operation only creates the user. Teams and Applications should be associated using specific endpoints.
    GET /users/{UserKey}/ Returns the details of a given user.
    PUT /users/{UserKey}/ Updates a user with the specified details. The operation only updates the user details. Teams and Applications should be associated using specific endpoints.
    POST /users/{UserKey}/setpassword/ Allows to change a password of a given user.
    POST /users/{UserKey}/applications/ Grants a given role to the given application to the user.
    DELETE /users/{UserKey}/applications/{ApplicationKey}/ Revokes user's role in application permission.

    Endpoints

    GET /applications/

    Go to /applications

    Returns a list of applications that exist in the infrastructure.

    IncludeModules

    When set to true, the modules are also returned. The default value is false.

    query boolean
    IncludeEnvStatus

    When set to true, the application status per environment is also returned. The default value is false.

    query boolean

    application/json

    200 OK

    Applications list successfully retrieved.

    A list of Application records including AppStatusInEnv sub-lists, if requested.

    Application
    204 No Content

    No applications available in the infrastructure.

    400 Bad Request

    Failed to retrieve applications because IncludeModules was requested but IncludeEnvStatus was not, or invalid request when listing all applications.

    500 Internal Server Error

    Failed to list the applications.

    GET /applications/{ApplicationKey}/

    Go to /applications

    Returns the details of a given application.

    ApplicationKey

    The key of the desired application.

    path string
    IncludeModules

    When set to true, the modules details are also retrieved. The default value is false.

    query boolean
    IncludeEnvStatus

    When set to true, the application status per environment is also returned. The default value is false.

    query boolean

    application/json

    200 OK

    An Application record including an AppStatusInEnv sub-list, if requested.

    400 Bad Request

    Failed to retrieve applications because IncludeModules and IncludeEnvStatus parameters were incorrect.

    403 Forbidden

    Failed listing all applications because user has insufficient permissions.

    404 Not Found

    Failed getting running applications because one of the environments was not found.

    500 Internal Server Error

    Failed to retrieve the application.

    GET /applications/{ApplicationKey}/versions/

    Go to /applications

    Returns a list of versions of a given application.

    ApplicationKey

    The key of the desired application.

    path string
    ChangeLogFilter

    Optional filter. If present, only versions containing this string in the change log will be returned.

    query string
    MaximumVersionsToReturn

    The maximum number of versions to return. The default value is 5.

    query integer (int32)

    application/json

    200 OK

    Application versions list successfully retrieved.

    A list of ApplicationVersion records.

    ApplicationVersion_v2
    400 Bad Request

    Invalid request due to invalid max versions to return (less than 0).

    403 Forbidden

    Failed to retrieve the application with key <ApplicationKey>. The user does not have the required permissions.

    404 Not Found

    Failed to retrieve the application with key <ApplicationKey>.

    500 Internal Server Error

    Failed to list the application versions.

    DELETE /applications/{ApplicationKey}/versions/{VersionKey}/

    Go to /applications

    Discards an application version, if possible. Running versions, or versions used in Deployments cannot be deleted.

    ApplicationKey

    The key of the application whose version to be deleted.

    path string
    VersionKey

    The key of the application version to be deleted.

    path string
    204 No Content

    Application version successfully deleted.

    403 Forbidden

    Service Account doesn't have permissions to delete the specified application version.

    404 Not Found

    Application or application version not found.

    500 Internal Server Error

    Failed to delete application version <VersionKey>.

    GET /applications/{ApplicationKey}/versions/{VersionKey}/

    Go to /applications

    Returns the details of a given version of the specified application.

    ApplicationKey

    The key of the application whose version is being requested.

    path string
    IncludeModules

    When set to true, the modules details are also retrieved. The default value is false.

    query boolean
    VersionKey

    The key of the desired application version.

    path string

    application/json

    200 OK

    An ApplicationVersion record.

    403 Forbidden

    Failed to retrieve the application with key <ApplicationKey>. The user does not have the required permissions.

    404 Not Found

    Failed to retrieve the application with key <ApplicationKey>.

    500 Internal Server Error

    Failed to retrieve the application version.

    GET /applications/{ApplicationKey}/versions/{VersionKey}/content/

    Go to /applications

    Returns a link where the binary file for a given application version can be downloaded. The link will expire in 60 minutes.

    ApplicationKey

    The key of the application for which to get the binary file link.

    path string
    VersionKey

    The key of the application version for which to get the binary file link.

    path string

    application/json

    200 OK

    The link for the application binary file.

    Expires

    The expiration date and time of the returned link.

    string(date-time)
    204 No Content

    No binary available for given keys.

    400 Bad Request

    The request is invalid for the given keys (Application:<ApplicationKey>; ApplicationVersionKey <ApplicationVersionKey>).

    403 Forbidden

    User doesn’t have permissions for the given keys (Application:<ApplicationKey>; ApplicationVersionKey <ApplicationVersionKey>).

    404 Not Found

    Failed to retrieve the application with key <ApplicationKey> or the application version with key <ApplicationVersionKey>.

    500 Internal Server Error

    Failed to download the oap of the application version.

    GET /deployments/

    Go to /deployments

    Returns a list of deployments ordered by creation date, from newest to oldest.

    MinDate

    The minimum creation date of the deployments to return. The default value is 1 week before the current date.

    query string (date)
    MaxDate

    The maximum creation date of the deployments to return. The default value is the current date.

    query string (date)
    TargetEnvironmentKey

    The key of the target environment to return the deployments from. If the user does not have access to the environment, the list returned will be empty. If no environment key is passed, the list will not be filtered by any target environment.

    query string

    application/json

    200 OK

    Deployments list successfully retrieved.

    A list of Deployment records.

    Deployment_v2
    204 No Content

    There are no deployments created between <MinDate> and <MaxDate> for environment key <TargetEnvironmentKey>.

    400 Bad Request

    Invalid request for list of deployments created between <MinDate> and <MaxDate> for environment key <TargetEnvironmentKey>.

    403 Forbidden

    User doesn't have access to any environment.

    500 Internal Server Error

    Failed to list the deployments.

    POST /deployments/

    Go to /deployments

    Creates a deployment to a target environment. An optional list of applications to include in the deployment can be specified. The input is a subset of deployment object.

    application/json


    text/plain

    200 OK

    Deployment successfully created.

    The key of the newly created deployment.

    400 Bad Request

    Invalid request.

    403 Forbidden

    Invalid user permissions.

    404 Not Found

    Source or target environment not found.

    500 Internal Server Error

    Failed to create deployment from environment <SourceEnvironmentKey> to environment <TargetEnvironmentKey>.

    DELETE /deployments/{DeploymentKey}/

    Go to /deployments

    Discards a deployment, if possible. Only deployments whose state is “saved” can be deleted.

    DeploymentKey

    The key of the deployment to delete.

    path string
    204 No Content

    Deployment successfully deleted.

    400 Bad Request

    Deployment with key <DeploymentKey> cannot be deleted

    403 Forbidden

    Service Account doesn't have permissions to the deployment with key <DeploymentKey>.

    404 Not Found

    Deployment with key <DeploymentKey> not found.

    500 Internal Server Error

    Failed to delete deployment <DeploymentKey>.

    GET /deployments/{DeploymentKey}/

    Go to /deployments

    Returns the details of a given deployment. The returned information contains the included applications and the possible conflicts that can arise from the deployment of the current applications.

    DeploymentKey

    The key of the desired deployment.

    path string

    application/json

    200 OK

    Deployment details successfully retrieved.

    403 Forbidden

    User doesn't have permissions to the deployment with key <DeploymentKey>.

    404 Not Found

    Deployment with key <DeploymentKey> not found.

    500 Internal Server Error

    Failed to access the details of deployment with key <DeploymentKey>.

    PUT /deployments/{DeploymentKey}/

    Go to /deployments

    Updates a given deployment. An optional list of applications to include in the deployment can be specified. The input is a subset of deployment object.

    application/json


    DeploymentKey

    The key of the deployment to update.

    path string

    application/json

    200 OK

    Deployment successfully updated.

    400 Bad Request

    Invalid request.

    403 Forbidden

    Invalid user permissions.

    404 Not Found

    Deployment plan not found.

    500 Internal Server Error

    Failed to update deployment with key <DeploymentKey>.

    GET /deployments/{DeploymentKey}/status/

    Go to /deployments

    Returns the details of a given deployment execution, including the deployment status and messages.

    DeploymentKey

    The key of the deployment whose status is being requested.

    path string

    application/json

    200 OK

    Deployment status successfully retrieved.

    403 Forbidden

    User doesn't have permissions to the deployment with key <DeploymentKey>.

    404 Not Found

    Deployment with key <DeploymentKey> not found.

    500 Internal Server Error

    Failed to retrieve the status of the deployment with key <DeploymentKey>.

    POST /deployments/{DeploymentKey}/{Command}/

    Go to /deployments

    Executes the given command in a specified deployment. The allowed commands are “start”, “continue” and “abort”.

    DeploymentKey

    The key of the deployment where the command will be executed.

    path string
    Command

    The command to execute. One of “start”, “continue” or “abort”.

    path string
    RedeployOutdated

    If True, outdated applications in the target environment will be redeployed.

    query boolean
    202 Accepted

    Command <Command> executed successfully for deployment <DeploymentKey>.

    400 Bad Request

    Command <Command> can't be executed for deployment <DeploymentKey>.

    403 Forbidden

    Service Account doesn't have permissions to the deployment with key <DeploymentKey>.

    404 Not Found

    Deployment with key <DeploymentKey> not found, or command not found.

    500 Internal Server Error

    Failed to execute command <Command> for deployment with key <DeploymentKey>.

    GET /environments/

    Go to /environments

    Lists all the environments in the infrastructure.

    application/json

    200 OK

    Environments list successfully retrieved.

    A list of Environment records.

    Environment
    204 No Content

    No environments found.

    500 Internal Server Error

    Failed to list the environments.

    GET /environments/{EnvironmentKey}/

    Go to /environments

    Returns the details of a given environment.

    EnvironmentKey

    The key of the desired environment.

    path string

    application/json

    200 OK

    Environment details successfully retrieved.

    403 Forbidden

    Failed to retrieve the environment with key: <EnvironmentKey>. The user does not have the required permissions.

    404 Not Found

    Failed to retrieve the environment with key: <EnvironmentKey>.

    500 Internal Server Error

    Failed to access the details of environment.

    GET /environments/{EnvironmentKey}/applications/

    Go to /environments

    Returns information about the running versions of all applications in a given environment.

    EnvironmentKey

    The key of the environment whose list of running applications is being requested.

    path string
    IncludeModules

    When set to true, the modules details are also retrieved. The default value is false.

    query boolean
    IncludeEnvStatus

    When set to true, the applications’ status information in the environment is included in the result. The default value is false.

    query boolean

    application/json

    200 OK

    Applications list for the given environment successfully retrieved.

    A list of Application records.

    Application
    204 No Content

    No applications found in environment with key <EnvironmentKey>.

    400 Bad Request

    Failed to retrieve applications published in environment because IncludeModules and IncludeEnvStatus parameters were incorrect, or Invalid request when getting running applications for environment with key <EnvironmentKey>.

    403 Forbidden

    Failed to retrieve the running applications for environment with key <EnvironmentKey> because user has insufficient permissions.

    404 Not Found

    Failed to retrieve running applications for environment with key <EnvironmentKey> because it was not found.

    POST /environments/{EnvironmentKey}/applications/

    Go to /environments

    Creates a new application in the environment.

    A structure holding the name, description and other attributes of the new application.


    EnvironmentKey

    The key of the environment to create the application.

    path string

    application/json

    201 Created

    The key of the newly created application.

    400 Bad Request

    Failed to create application due to invalid application name, runtime kind, template, color or team.

    403 Forbidden

    Failed to create an application because user has insufficient permissions.

    404 Not Found

    Failed to create an application for environment with key <EnvironmentKey> because it was not found.

    500 Internal Server Error

    Failed to create application due to an internal error.

    GET /environments/{EnvironmentKey}/applications/{ApplicationKey}/

    Go to /environments

    Returns information about the running version of the specified application in a given environment.

    EnvironmentKey

    The key of the environment from which to get the running application details.

    path string
    ApplicationKey

    The key of the application whose details are being requested.

    path string
    IncludeEnvStatus

    When set to true, the applications’ status information in the environment is included in the result. The default value is false.

    query boolean
    IncludeModules

    When set to true, the modules details are also retrieved. The default value is false.

    query boolean

    application/json

    200 OK

    Application information successfully retrieved.

    400 Bad Request

    Request asked for Modules but not for Status.

    403 Forbidden

    User doesn’t have permissions for the given keys (EnvironmentKey:<EnvironmentKey>; Application:<ApplicationKey>).

    404 Not Found

    Failed to retrieve the environment with key <EnvironmentKey> or the application with key <ApplicationKey>.

    500 Internal Server Error

    Failed to access the running version of an application.

    GET /environments/{EnvironmentKey}/applications/{ApplicationKey}/content/

    Go to /environments

    Returns a link where the binary file for a given application can be downloaded. The link will expire in 60 minutes.

    EnvironmentKey

    The key of the environment from which to get the application binary file link.

    path string
    ApplicationKey

    The key of the application for which to get the binary file link.

    path string
    Type

    The type of binary file to return, when applicable. One of “oap”, “apk” or “ipa”.

    query string

    application/json

    200 OK

    Binary file download link successfully retrieved.

    Expires

    The expiration date and time of the returned link.

    string (date-time)
    204 No Content

    No binary available for given type and keys.

    400 Bad Request

    The required type <Type> is invalid for given keys (EnvironmentKey:<EnvironmentKey>; Application:<ApplicationKey>).

    403 Forbidden

    User doesn’t have permissions for the given keys (EnvironmentKey:<EnvironmentKey>; Application:<ApplicationKey>).

    404 Not Found

    Failed to retrieve the environment with key <EnvironmentKey> or the application with key <ApplicationKey>.

    500 Internal Server Error

    Failed to download <Type> of an application.

    POST /environments/{EnvironmentKey}/applications/{ApplicationKey}/versions/

    Go to /environments

    Creates a new version of the application based on the current running application.

    application/json

    A structure holding the new version name for the application and for its native applications, if applicable.


    EnvironmentKey

    The key of the environment from which to get the application.

    path string
    ApplicationKey

    The key of the application for which to generate a new version.

    path string

    application/json

    201 Created

    Application version successfully created.

    400 Bad Request

    Invalid request.

    403 Forbidden

    Invalid user permissions.

    404 Not Found

    Environment or application not found.

    500 Internal Server Error

    Failed to tag an application, or Failed to create a new version for application <ApplicationName>.

    GET /environments/{EnvironmentKey}/deploymentzones/

    Go to /environments

    Returns information about the deployment zones available in a given environment.

    EnvironmentKey

    The key of the environment from which to get the running application details.

    path string

    application/json

    200 OK

    Deployment zone information successfully retrieved.

    A list of DeploymentZone records.

    DeploymentZone_v2
    400 Bad Request

    Failed to access the deployment zones of environment.

    403 Forbidden

    Failed to retrieve the deployment zones of environment <EnvironmentName> (key: <EnvironmentKey>). Error: The user does not have the required permissions, or Feature not Licensed.

    404 Not Found

    Failed to retrieve the deployment zones of environment with key: <EnvironmentKey>.

    500 Internal Server Error

    Failed to access the deployment zones of environment.

    GET /environments/{EnvironmentKey}/templates/

    Go to /environments

    Returns information about the templates available in a given environment.

    EnvironmentKey

    The key of the environment from which to get the running application details.

    path string

    application/json

    200 OK

    Templates list successfully retrieved.

    A list of Template records.

    Template
    400 Bad Request

    Environment doesn't support list templates.

    403 Forbidden

    User doesn't have permissions.

    404 Not Found

    Environment not found.

    500 Internal Server Error

    Internal error raised.

    GET /modules/

    Go to /modules

    Returns a list of modules that exist in the infrastructure.

    IncludeEnvStatus

    When set to true, the module status per environment is also returned. The default value is false.

    query boolean

    application/json

    200 OK

    Modules list successfully retrieved.

    A list of Module records.

    Module
    204 No Content

    No modules found in the infrastructure.

    500 Internal Server Error

    Failed to list modules.

    GET /modules/{ModuleKey}/

    Go to /modules

    Returns the details of a given module.

    ModuleKey

    Key of the module to list the details from.

    path string
    IncludeEnvStatus

    Boolean to indicate if status per env should be returned. Default is false

    query boolean

    application/json

    200 OK

    Module details successfully retrieved.

    403 Forbidden

    Failed to retrieve the module with key: <ModuleKey>. The user does not have the required permissions.

    404 Not Found

    Failed to retrieve the module with key: <ModuleKey>.

    500 Internal Server Error

    Failed to retrieve the module with key <ModuleKey>

    GET /modules/{ModuleKey}/versions/

    Go to /modules

    Returns a list of versions of a given module.

    ModuleKey

    The module from where to retrieve the versions from.

    path string
    MaximumVersionsToReturn

    Maximum number of versions to return. Default is 5.

    query integer (int32)

    application/json

    200 OK

    List of module versions successfully retrieved.

    A list of ModuleVersion records.

    ModuleVersion_v2
    400 Bad Request

    Invalid request due to invalid max versions to return (less than 0).

    403 Forbidden

    Failed to retrieve the module with key: <ModuleKey>. The user does not have the required permissions.

    404 Not Found

    Failed to retrieve the module with key: <ModuleKey>.

    500 Internal Server Error

    Failed to list module versions.

    GET /modules/{ModuleKey}/versions/{ModuleVersionKey}/

    Go to /modules

    Returns the details of a given module version.

    ModuleKey

    The module from where to retrieve the versions from.

    path string
    ModuleVersionKey

    Key of the module version to return.

    path string

    application/json

    200 OK

    Module version details successfully retrieved.

    403 Forbidden

    Failed to retrieve the module with key: <ModuleKey>. The user does not have the required permissions.

    404 Not Found

    Failed to retrieve the module with key: <ModuleKey>, or Failed to retrieve the module version with key: <ModuleKey>

    500 Internal Server Error

    Failed to access the details of a module version.

    GET /roles/

    Go to /roles

    Lists all the roles.

    IncludeEnvPermissions

    Defines if it is to include a list of environment permissions for each role.

    query boolean

    application/json

    200 OK

    List of Roles

    403 Forbidden

    User has no permissions to retrieve roles list.

    500 Internal Server Error

    Internal error raised.

    POST /roles/

    Go to /roles

    Creates a role with the specified permissions.

    application/json

    The role to be created.


    text/plain

    201 Created

    Role created with success.

    The key of the newly created role.

    400 Bad Request

    Failed to create role because invalid role name, role is protected, wrong combination of infrastructure and manage teams flags or not defined/wrong permissions for all environments.

    403 Forbidden

    No permissions to create a new role.

    500 Internal Server Error

    Internal error raised.

    GET /roles/permissionlevels/

    Go to /roles

    Gets available permission levels.

    application/json

    200 OK

    List of permission levels.

    403 Forbidden

    No permissions to manage users and roles.

    500 Internal Server Error

    Internal error.

    DELETE /roles/{RoleKey}/

    Go to /roles

    Deletes a role.

    RoleKey

    Role key to delete.

    path string
    UsersNewRoleKey

    Indicates the role that should replace the deleted role, for the users that have this role assigned (both as defaullt, application and team role). Needed if there are users with the role assigned.

    query boolean
    204 No Content

    Role deleted with success.

    400 Bad Request

    Role can't be deleted because it is reserved.

    403 Forbidden

    No permissions to delete the role.

    404 Not Found

    Role not found.

    500 Internal Server Error

    Internal error raised.

    GET /roles/{RoleKey}/

    Go to /roles

    Returns the details of a given role.

    RoleKey

    Role key to retrieve.

    path string
    IncludeEnvPermissions

    Defines if it is to include a list of environment permissions for role.

    query boolean

    application/json

    200 OK

    Record of Role

    403 Forbidden

    User doesn't have permissions.

    404 Not Found

    Role not found.

    500 Internal Server Error

    Internal error raised.

    PUT /roles/{RoleKey}/

    Go to /roles

    Updates a role with the specified permissions.

    application/json

    The role to be update.


    RoleKey

    Role key to update.

    path string

    text/plain

    200 OK

    Role updated with success.

    The key of the updated role.

    400 Bad Request

    Failed to update role because invalid role name, role is protected, wrong combination of infrastructure and manage teams flags or not defined/wrong permissions for all environments.

    403 Forbidden

    No permissions to update the role.

    404 Not Found

    Role not found.

    500 Internal Server Error

    Internal error raised.

    GET /teams/

    Go to /teams

    Lists all the teams.

    IncludeUsers

    Defines if it is to include a list of users that belong to the team.

    query boolean
    IncludeApplications

    Defines if it is to include a list of applications that belong to the team.

    query boolean

    application/json

    200 OK

    List of teams successfully retrieved.

    A list of Team records including Users and Applications sub-lists, if requested.

    Team
    204 No Content

    No teams defined

    403 Forbidden

    User has no permissions to retrieve teams list.

    500 Internal Server Error

    Internal error raised.

    POST /teams/

    Go to /teams

    Creates a team with the specified details. The operation only creates the team. Users and Applications should be associated using specific endpoints.

    The team to be created.


    201 Created

    Team created with success.

    400 Bad Request

    Failed to create team due to invalid team name.

    403 Forbidden

    No permissions to create a new team.

    500 Internal Server Error

    Internal error raised.

    DELETE /teams/{TeamKey}/

    Go to /teams

    Deletes a team.

    TeamKey

    Team key to delete.

    path string
    204 No Content

    Team deleted with success.

    403 Forbidden

    No permissions to delete a team.

    404 Not Found

    Team not found.

    500 Internal Server Error

    Internal error raised.

    GET /teams/{TeamKey}/

    Go to /teams

    Returns the details of a given team.

    TeamKey

    Team key to retrieve.

    path string
    IncludeUsers

    Defines if it is to include a list of users that belong to the team.

    query boolean
    IncludeApplications

    Defines if it is to include a list of applications that belong to the team.

    query boolean
    200 OK

    Record of Team

    403 Forbidden

    User don't have permissions.

    404 Not Found

    Team not found.

    500 Internal Server Error

    Internal error raised.

    PUT /teams/{TeamKey}/

    Go to /teams

    Updates a team with the specified details. The operation only affects the Team details. Users and Applications should be associated or dissociated using specific endpoints.

    The team to be updated.


    TeamKey

    Team key to update.

    path string
    200 OK

    Team updated with success.

    400 Bad Request

    Failed to update team due to invalid team name.

    403 Forbidden

    No permissions to update the team.

    404 Not Found

    Team not found.

    500 Internal Server Error

    Internal error raised.

    POST /teams/{TeamKey}/applications/

    Go to /teams

    Adds the specified application to a given team. The operation adds an existing application to the team. To create a new application, use POST /environments/{EnvironmentKey}/applications/

    The application information to be added.


    TeamKey

    The key of the team where the add the applications.

    path string
    201 Created

    Application added with success.

    400 Bad Request

    Failed to add application to team because application doesn't exist.

    403 Forbidden

    No permissions to update the team.

    404 Not Found

    Team not found.

    500 Internal Server Error

    Internal error raised.

    DELETE /teams/{TeamKey}/applications/{ApplicationKey}

    Go to /teams

    Removes application from the given team.

    TeamKey

    The team unique identifier.

    path string
    ApplicationKey

    The application unique identifier.

    path string
    200 OK

    Application removed with success.

    400 Bad Request

    Failed to remove application to team because application doesn't exist.

    403 Forbidden

    No permissions to update the team.

    404 Not Found

    Team or application not found.

    500 Internal Server Error

    Internal error raised.

    POST /teams/{TeamKey}/users/

    Go to /teams

    Adds a user to a team with a specified role.

    The user and role information to be added.


    TeamKey

    The key of the team where the add the user.

    path string
    201 Created

    User added with success.

    400 Bad Request

    Failed to add user to team because user doesn't exist or role doesn't exist.

    403 Forbidden

    No permissions to update the team.

    404 Not Found

    Team not found.

    500 Internal Server Error

    Internal error raised.

    DELETE /teams/{TeamKey}/users/{UserKey}/

    Go to /teams

    Removes a user from the given team

    TeamKey

    The key of the team where the remove the user.

    path string
    UserKey

    The key of the user to be removed.

    path string
    200 OK

    User removed with success.

    400 Bad Request

    Failed to remove user from team because user doesn't exist or role doesn't exist.

    403 Forbidden

    No permissions to update the team.

    404 Not Found

    Team or user not found.

    500 Internal Server Error

    Internal error raised.

    GET /users/

    Go to /users

    Lists all the users. By default shows only active users.

    IncludeInactive

    Defines if it is to include a list of inactive users.

    query boolean
    IncludeTeams

    Defines if it is to include a list of teams that the users belong to.

    query boolean
    IncludeApplicationRoles

    Defines if it is to include a list of applications that the users are associated with.

    query boolean

    application/json

    200 OK

    List of users successfully retrieved.

    A list of User records.

    User
    204 No Content

    No Users defined

    403 Forbidden

    User has no permissions to retrieve users list.

    500 Internal Server Error

    Internal error raised.

    POST /users/

    Go to /users

    Creates a user with the specified details. The operation only creates the user. Teams and Applications should be associated using specific endpoints.

    The user to be created.


    201 Created

    User created with success.

    The key of the newly created user.

    400 Bad Request

    Failed to create user due to invalid username, name or role.

    403 Forbidden

    No permissions to create a new user.

    500 Internal Server Error

    Internal error raised.

    GET /users/{UserKey}/

    Go to /users

    Returns the details of a given user.

    UserKey

    User key to retrieve.

    path string
    includeTeams

    Defines if it is to include a list of teams that the user belong to.

    query boolean
    includeApplicationRoles

    Defines if it is to include a list of applications that the user is associated with.

    query boolean

    application/json

    200 OK

    Record of User

    403 Forbidden

    User doesn't have permissions.

    404 Not Found

    User not found.

    500 Internal Server Error

    Internal error raised.

    PUT /users/{UserKey}/

    Go to /users

    Updates a user with the specified details. The operation only updates the user details. Teams and Applications should be associated using specific endpoints.

    application/json

    The user to be updated.


    UserKey

    User key to update.

    path string

    text/plain

    200 OK

    User updated with success.

    The key of the updated user.

    400 Bad Request

    Failed to update user due to invalid username, name or role.

    403 Forbidden

    No permissions to update the user.

    404 Not Found

    User not found.

    500 Internal Server Error

    Internal error raised.

    POST /users/{UserKey}/applications/

    Go to /users

    Grants a given role to the given application to the user.

    application/json

    The key of the application and Role to grant permissions.


    UserKey

    User key to grant permissions.

    path string

    text/plain

    201 Created

    Permissions granted with success.

    400 Bad Request

    Failed to add application to user because application or role are invalid.

    403 Forbidden

    No permissions to change User permissions.

    404 Not Found

    User not found.

    500 Internal Server Error

    Internal error raised.

    DELETE /users/{UserKey}/applications/{ApplicationKey}/

    Go to /users

    Revokes user's role in application permission.

    application/json


    UserKey

    User key to grant permissions.

    path string
    ApplicationKey

    The key of the application to grant permissions.

    path string

    text/plain

    204 No Content

    Permissions revoked with success.

    403 Forbidden

    No permissions to change User permissions.

    404 Not Found

    User or permission not found.

    500 Internal Server Error

    Internal error raised.

    POST /users/{UserKey}/setpassword/

    Go to /users

    Allows to change a password of a given user.

    application/json

    The new password value.


    UserKey

    User key to update.

    path string

    text/plain

    200 OK

    User password updated with success.

    400 Bad Request

    Failed to change password because password is invalid.

    403 Forbidden

    No permissions to update the user password.

    404 Not Found

    User not found.

    405 Method Not Allowed

    Failed to change password because external authentication provider is in use.

    500 Internal Server Error

    Internal error raised.

    Structures

    Application: object

    An application with its details and its status in the environments were it is running.

    Key: string

    Application unique identifier.

    Name: string

    Name of the application.

    Kind: string

    Identifies the kind of application. [Mobile|WebResponsive]

    Team: string

    The team that owns the application.

    Description: string

    Description of the application.

    URLPath: string

    Relative URL path of the application, starting from the hostname.

    IconHash: string

    Hash of the application icon. Can be used to detect changes in the application icon.

    IconURL: string

    The URL for the application icon.

    IsSystem: boolean

    Indicates if the application is a built-in component of the AgilePlatform (e.g. ServiceCenter, LifeTime, ...).

    AppStatusInEnvs: object[]

    Information about the status of the application in each environment it is running.


    ApplicationConflict: object

    A depoyment conflict.

    Message: string

    Description of the conflict.

    ProducerApplicationOperation: ApplicationOperation
    ConsumerApplicationOperation: ApplicationOperation
    ModuleConflict: ModuleConflict

    ApplicationConflictListTextListDeployment_v2Record: object

    Deployment: Deployment_v2
    ApplicationsToRedeploy: string[]
    string
    ApplicationConflicts: object[]

    ApplicationOperation: object

    Operation executed in the deployment over the application.

    ApplicationKey: string

    Application unique identifier.

    ApplicationVersionKey: string

    Application Version unique identifier.

    DeploymentOperation: string

    Label of the operation to be performed. Example: Deploy 1.5.


    ApplicationOperation_v2: object

    Operation executed in the deployment over the application.

    ApplicationKey: string

    Application unique identifier.

    ApplicationVersionKey: string

    Application Version unique identifier.

    DeploymentOperation: string

    Label of the operation to be performed. Example: Deploy 1.5.

    DeploymentZoneKey: string

    Deployment Zone unique identifier


    ApplicationRole: object

    Represents a set of an application and a role.

    applicationKey: string
    applicationName: string
    roleKey: string
    roleName: string

    ApplicationShortInfo: object

    A simplification of application structure.

    Key: string

    Application unique identifier.

    Name: string

    Name of the application.


    ApplicationVersion_v2: object

    Information about a specific version of an application and the versions of its modules.

    Key: string

    Application version unique identifier.

    ApplicationKey: string

    Application unique identifier.

    Version: string

    Version of the application.

    ChangeLog: string

    Change Log associated to this Application Version.

    CreatedOn: string (date-time)

    When was the Application Version created.

    "2014-12-31T23:59:59.938Z"
    InUse: boolean

    Defines if the Application Version is being used.

    MobileVersions: object[]

    List of mobile versions.

    PrimaryColor: string

    The primary color of the application interface.

    NativeHash: string

    The native has relative to the mobile platform.

    ModuleVersions: object[]

    List of module versions.


    ApplicationVersionCreate: object

    A structure holding the new version name for the application and for its native applications, if applicable.

    ChangeLog: string

    Change log of the version to be created.

    Version: string

    Version of the application.

    MobileVersions: object[]

    List of mobile versions.

    ModuleVersionKeys: string[]

    [DEPRECATED] List of module version keys to validate if the current state of the application is still the expected. This parameter was deprecated on LifeTime Feb 2019 Release, there is no need to pass the module version keys. If the module version keys are passed, they will still be validated.

    string

    ApplicationVersionKeyDeploymentZoneKeyRecordListTextTextTextRecord: object

    Notes: string
    SourceEnvironmentKey: string
    TargetEnvironmentKey: string
    ApplicationOperations: object[]

    AppStatusInEnv_v2: object

    Status of application in a given environment.

    EnvironmentKey: string

    Environment unique identifier.

    BaseApplicationVersionKey: string

    Base application version unique identifier. If app is not modified in environment, this is the application version deployed.

    IsModified: boolean

    True if the application has been changed since the last tag, false otherwise.

    IsModifiedReason: string

    Indicates the application status.

    IsModifiedMessage: string

    Indicates the application status.

    ConsistencyStatus: string

    Indicates the application consistency status.

    ConsistencyStatusMessages: string

    Messages regarding the consistency status of the application.

    MobileAppsStatus: object[]

    Status of mobile apps in environment.

    ModuleStatusInEnvs: object[]

    Status of modules in environment.

    DeploymentZoneKey: string

    Deployment Zone unique identifier


    Deployment_v2: object

    Deployment information with the operations executed.

    Key: string

    Deployment unique identifier.

    SourceEnvironmentKey: string

    Source environment unique identifier.

    TargetEnvironmentKey: string

    Target environment unique identifier.

    Notes: string

    Deployment notes.

    CreatedOn: string (date-time)

    Date and time when the deployment plan was created.

    "2014-12-31T23:59:59.938Z"
    CreatedBy: string

    Name of the user who created the deployment plan.

    CreatedByUsername: string

    Username of the user who created the deployment plan.

    SavedOn: string (date-time)

    The date and time when the deployment plan was saved.

    "2014-12-31T23:59:59.938Z"
    SavedBy: string

    Name of the user who last saved the deployment plan.

    SavedByUsername: string

    Username of the user who last saved the deployment plan.

    StartedOn: string (date-time)

    The date and time when the deployment started.

    "2014-12-31T23:59:59.938Z"
    StartedBy: string

    Name of the user who started the deployment.

    StartedByUsername: string

    Username of the user who started the deployment.

    AbortedOn: string (date-time)

    The date and time when the deployment was aborted.

    "2014-12-31T23:59:59.938Z"
    AbortedBy: string

    Name of the user who aborted the deployment.

    AbortedByUsername: string

    Username of the user who aborted the deployment.

    ApplicationOperations: object[]

    List of Application Operations included in the deployment.


    DeploymentData_v2: object

    Deployment information with the operations executed.

    Key: string

    Deployment unique identifier.

    SourceEnvironmentKey: string

    Source environment unique identifier.

    TargetEnvironmentKey: string

    Target environment unique identifier.

    Notes: string

    Deployment notes.

    CreatedOn: string (date-time)

    Date and time when the deployment plan was created.

    "2014-12-31T23:59:59.938Z"
    CreatedBy: string

    Name of the user who created the deployment plan.

    CreatedByUsername: string

    Username of the user who created the deployment plan.

    SavedOn: string (date-time)

    The date and time when the deployment plan was saved.

    "2014-12-31T23:59:59.938Z"
    SavedBy: string

    Name of the user who last saved the deployment plan.

    SavedByUsername: string

    Username of the user who last saved the deployment plan.

    StartedOn: string (date-time)

    The date and time when the deployment started.

    "2014-12-31T23:59:59.938Z"
    StartedBy: string

    Name of the user who started the deployment.

    StartedByUsername: string

    Username of the user who started the deployment.

    AbortedOn: string (date-time)

    The date and time when the deployment was aborted.

    "2014-12-31T23:59:59.938Z"
    AbortedBy: string

    Name of the user who aborted the deployment.

    AbortedByUsername: string

    Username of the user who aborted the deployment.

    ApplicationOperations: object[]

    List of Application Operations included in the deployment.


    DeploymentMessage: object

    Message from a deployment operation log.

    Instant: string (date-time)

    Date and time when the message was logged.

    "2014-12-31T23:59:59.938Z"
    Message: string

    Details of the message.


    DeploymentMessageListTextTextRecord: object

    DeploymentStatus: string
    Info: string
    DeploymentLog: object[]

    DeploymentTechnology_v2: object

    Deployment Hosting technology of the Deployment Zone.

    Key: string

    Deployment Technology unique identifier.

    Name: string

    Name of deployment technology


    DeploymentZone_v2: object

    Deployment Zone of an environment.

    Key: string

    Deployment Zone unique identifier.

    Name: string

    Name of deployment zone

    IsDefault: boolean

    True if the deployment zone is the default one in the environment

    DeploymentTechnology: DeploymentTechnology_v2


    Environment: object

    An environment and its information.

    Key: string

    Unique identifier of the environment.

    Name: string

    Name of the environment.

    OSVersion: string

    Platform Server version. [X.X.X.X]

    Order: integer (int32)

    The order of the environment as registered in Lifetime.

    HostName: string

    Hostname of the environment as registered.

    UseHTTPS: boolean

    Indicates if connections to the environment are made using HTTPS.

    EnvironmentType: string

    Indicates the type of the environment. [Development | Test | Production]

    NumberOfFrontEnds: integer (int32)

    Number of front-end servers in the environment.

    ApplicationServerType: string

    Stack of the application server. [.NET | JAVA]

    ApplicationServer: string

    Application server in use. [IIS | JBoss | WebLogic]

    DatabaseProvider: string

    Type of database provider. [SqlServer | Oracle]

    IsCloudEnvironment: boolean

    Indicates if the environment is running on a cloud service.

    EnvironmentPermission: object

    Definition of Environment Permissions

    environmentKey: string

    Key of the environment that refers to the permission.

    environmentName: string

    Name of the environment that refers to the permission.

    level: integer

    Level of permission.

    levelLabel: string

    Short description of the permission level.

    createApplications: boolean

    Allows to create new applications.

    addDependenciesToSystem: boolean

    Allows to add depedencies to System application.

    Exception: object

    Errors: string[]
    string

    Full detail of the error

    StatusCode: integer 500

    Status code raised with the error.

    MobileAppStatusInEnv: object

    Status of mobile application in a given environment.

    EnvironmentKey: string

    Environment unique identifier.

    NativePlatform: string

    Name of native platform. [Android | iOS]

    VersionNumber: string

    The version number, like for example 1.5.4, of the native build. It is used to be able to map the version to the version in the Andoid or iOS store.

    HasBinaryAvailable: boolean

    True if the binary of the application is available for the current configuration.

    IsConfigured: boolean

    True if the application is configured.

    IsConfigurationChanged: boolean

    True if the configuration of the Mobile Application has changed in the environment.

    IsModified: boolean

    True if the Native Hash of the Mobile Application does not match the one in the AppVersionNativeBuild baseline.


    MobileVersion: object

    A mobile version and its information.

    NativePlatform: string

    Name of native platform. [Android | iOS]

    VersionNumber: string

    The version number, like for example 1.5.4, of the native build. It is used to be able to map the version to the version in the Andoid or iOS store.

    VersionDescription: string

    The description of the mobile version.


    Module: object

    Module information and the status in the environments where the modules are running.

    Key: string

    Module unique identifier.

    Name: string

    Name of the module.

    Description: string

    Description of the module.

    Kind: string

    Module type (eSpace or Extension).

    ModuleStatusInEnv: object[]

    Status of the module in environments


    ModuleConflict: object

    A module conflict.

    ProducerModuleKey: string

    Producer Module unique identifier.

    ConsumerModuleKey: string

    Consumer Module unique identifier.

    TotalRequiredElements: integer (int32)

    Total number of required elements.

    ConflictType: string

    Type of conflict. [Producer Module Missing|Producer Element Missing|Producer Element Incompatible|Consumer Module Outdated|Newer Producer Module Available|IncompatiblePlatformServer|ConsumerModuleMoved|ProducerModuleMoved|NameColision]


    ModuleStatusInEnv: object

    Status of module in a given environment.

    ApplicationKey: string

    Application unique identifier.

    EnvironmentKey: string

    Environment unique identifier.

    ModuleVersionKey: string

    Module version unique identifier.

    ConsistencyStatus: string

    Indicates the module consistency status.

    ConsistencyStatusMessages: string

    Messages regarding the consistency status of the module.


    ModuleVersion_v2: object

    A module version and its information.

    Key: string

    Module version unique identifier.

    ModuleKey: string

    Module unique identifier.

    CreatedOn: string (date-time)

    Date and time of the module version creation.

    "2014-12-31T23:59:59.938Z"
    CreatedBy: string

    Name of the user that created the version.

    CreatedByUsername: string

    Username of the user that created the version.

    GeneralHash: string

    Non-unique hash of the module version. Can be used to validate if two module versions have semantic differences.

    DirectUpgradeFromHash: string

    If this module version is the result of a direct upgrade of another version, then this field contains the key of that version


    NewApplication: object

    TemplateKey: string
    TeamKey: string
    Name: string
    Description: string
    Color: string

    Password: object

    Definition of a password.

    password: string

    Password value.


    PermissionLevels: object

    level: integer

    Value that identifies the permission level.

    levelLabel: string

    Short description of the permission level.

    description: string

    Full description of the permission level.


    Role: object

    Full definition of a role.

    key: string

    Identifier of a role.

    name: string

    Name of a role

    manageInfrastructure: boolean

    Allows manage the infrastructure.

    manageTeams: boolean

    Allows to manage teams and roles.

    environmentPermissions: object[]

    Definition of permission levels per environment.


    Team: object

    Definition of a team

    key: string
    name: string
    description: string
    users: object[]
    applications: object[]

    TeamRole: object

    Pair Team and Role information.

    TeamKey: string
    TeamName: string
    RoleKey: string
    RoleName: string

    Template: object

    Template of an environment.

    Key: string

    Template unique identifier.

    Name: string

    Name of template.

    Description: string

    Description of template.

    ApplicationKind: string

    Type of the application [Web|Mobile|Service|Reactive].


    TextRecord: object

    ApplicationVersionKey: string

    The key of the newly created application version.


    TextRecord2: object

    ApplicationKey: string

    TextTextRecord: object

    ApplicationVersionKey: string
    DeploymentZoneKey: string

    User: object

    Definition of a user. Also includes the teams to which the user belongs and the roles in specific applications.

    Key: string

    readonly

    Username: string
    Name: string
    Email: string
    IsActive: boolean true
    RoleKey: string
    RoleName: string

    readonly

    ApplicationRoles: object[]
    Teams: object[]

    UserRole: object

    Pair User and Role information.

    UserKey: string
    Name: string
    Username: string
    RoleKey: string
    RoleName: string

    UserRoleShortInfo: object

    Pair User Key and Role Key minimal information.

    userKey: string
    roleKey: string

    Articles in this Section