Overview
Projects in AWX represent source control repositories containing Ansible playbooks. They synchronize content from Git, Subversion, or other SCM systems.Endpoints
List Projects
Create Project
string
required
Project name (unique within organization)
string
Project description
integer
required
Organization ID
string
default:""
Source control type:
git, svn, insights, archive, or empty for manualstring
SCM repository URL (required if scm_type is set)
string
default:""
SCM branch, tag, or commit to checkout
string
default:""
Git refspec for advanced SCM operations
boolean
default:"false"
Discard local changes before syncing
boolean
default:"false"
Delete repository on update
boolean
default:"false"
Track Git submodules
integer
SCM credential ID for authentication
integer
default:"0"
Update timeout in seconds (0 = no timeout)
string
Local path for manual projects (read-only for SCM projects)
boolean
default:"false"
Update repository before running jobs
integer
default:"0"
Cache timeout for project updates (seconds)
boolean
default:"false"
Allow changing branch per job template
integer
Default execution environment ID
Retrieve Project
Response Schema
integer
Project ID
string
Project name
string
Project description
string
SCM type:
git, svn, insights, archive, or emptystring
Repository URL
string
Branch/tag/commit
string
Git refspec
boolean
Whether to discard local changes
boolean
Whether to delete repo on update
boolean
Whether to track submodules
boolean
Whether to update before job launch
integer
Update cache timeout
boolean
Whether job templates can override branch
integer
Update timeout
string
Latest SCM revision (read-only)
string
Last update timestamp
boolean
Whether last update failed
string
Project status:
new, pending, waiting, running, successful, failed, error, canceled, never updated, ok, missinginteger
Organization ID
Links to related resources:
organization- Parent organizationcredential- SCM credentialdefault_environment- Default execution environmentplaybooks- Available playbooksinventories- SCM-based inventoriesscm_inventory_sources- Inventory sources using this projectteams- Teams with accessproject_updates- Update historyupdate- Trigger update endpointschedules- Update schedulesactivity_stream- Activity lognotification_templates_*- Notification templatesaccess_list- Access listobject_roles- Available rolescopy- Copy endpoint
Update Project
Delete Project
Trigger Project Update
Manually sync the project from SCM:Copy Project
List Playbooks
Get available playbooks in the project:List Project Inventories
Get SCM-based inventories:Project Updates
List Project Updates
Get Latest Update
Project Schedules
Project Teams
Notification Templates
Started Notifications
Success Notifications
Error Notifications
Object Roles
- admin_role - Full project administration
- use_role - Use project in job templates
- update_role - Trigger project updates
- read_role - View project details
Activity Stream
Access List
SCM Types
Git
Subversion
Archive
Manual
Filtering
Ordering
Complete Example
Best Practices
Use SCM Update on Launch
Use SCM Update on Launch
Enable
scm_update_on_launch to ensure playbooks are up-to-date before job runs.Set Update Cache Timeout
Set Update Cache Timeout
Use
scm_update_cache_timeout to avoid excessive SCM updates:Use Branch Override
Use Branch Override
Enable
allow_override to let job templates specify different branches.Secure Credentials
Secure Credentials
Use SCM credentials for private repositories:
Monitor Update Jobs
Monitor Update Jobs
Always monitor project_update jobs to catch sync failures early.