Documentation

Organizations List API Endpoint

Make a GET request to this resource to retrieve the list of organizations.

GET /api/v2/organizations/
HTTP 200 OK
Allow: GET, POST, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept
X-API-Node: localhost
X-API-Time: 0.138s

The resulting data structure contains:

{
    "count": 99,
    "next": null,
    "previous": null,
    "results": [
        ...
    ]
}

The count field indicates the total number of organizations found for the given query. The next and previous fields provides links to additional results if there are more than will fit on a single page. The results list contains zero or more organization records.

{
    "count": 1,
    "next": null,
    "previous": null,
    "results": [
        {
            "id": 1,
            "type": "organization",
            "url": "/api/v2/organizations/1/",
            "related": {
                "created_by": "/api/v2/users/1/",
                "modified_by": "/api/v2/users/1/",
                "workflow_job_templates": "/api/v2/organizations/1/workflow_job_templates/",
                "notification_templates_error": "/api/v2/organizations/1/notification_templates_error/",
                "notification_templates_success": "/api/v2/organizations/1/notification_templates_success/",
                "users": "/api/v2/organizations/1/users/",
                "object_roles": "/api/v2/organizations/1/object_roles/",
                "notification_templates_any": "/api/v2/organizations/1/notification_templates_any/",
                "teams": "/api/v2/organizations/1/teams/",
                "access_list": "/api/v2/organizations/1/access_list/",
                "notification_templates": "/api/v2/organizations/1/notification_templates/",
                "admins": "/api/v2/organizations/1/admins/",
                "instance_groups": "/api/v2/organizations/1/instance_groups/",
                "credentials": "/api/v2/organizations/1/credentials/",
                "inventories": "/api/v2/organizations/1/inventories/",
                "activity_stream": "/api/v2/organizations/1/activity_stream/",
                "projects": "/api/v2/organizations/1/projects/"
            },
            "summary_fields": {
                "created_by": {
                    "id": 1,
                    "username": "admin",
                    "first_name": "",
                    "last_name": ""
                },
                "modified_by": {
                    "id": 1,
                    "username": "admin",
                    "first_name": "",
                    "last_name": ""
                },
                "object_roles": {
                    "auditor_role": {
                        "id": 6,
                        "description": "Can view all settings for the organization",
                        "name": "Auditor"
                    },
                    "admin_role": {
                        "id": 4,
                        "description": "Can manage all aspects of the organization",
                        "name": "Admin"
                    },
                    "member_role": {
                        "id": 3,
                        "description": "User is a member of the organization",
                        "name": "Member"
                    },
                    "read_role": {
                        "id": 5,
                        "description": "May view settings for the organization",
                        "name": "Read"
                    }
                },
                "user_capabilities": {
                    "edit": true,
                    "delete": true
                },
                "related_field_counts": {
                    "job_templates": 1,
                    "users": 0,
                    "teams": 0,
                    "admins": 0,
                    "inventories": 1,
                    "projects": 1
                }
            },
            "created": "2017-09-06T02:56:11.329Z",
            "modified": "2017-09-06T02:56:11.329Z",
            "name": "Default",
            "description": ""
        }
    ]
}

Results

Each organization data structure includes the following fields:

  • id: Database ID for this organization. (integer)
  • type: Data type for this organization. (choice)
  • url: URL for this organization. (string)
  • related: Data structure with URLs of related resources. (object)
  • summary_fields: Data structure with name/description for related resources. (object)
  • created: Timestamp when this organization was created. (datetime)
  • modified: Timestamp when this organization was last modified. (datetime)
  • name: Name of this organization. (string)
  • description: Optional description of this organization. (string)

Sorting

To specify that organizations are returned in a particular order, use the order_by query string parameter on the GET request.

?order_by=name

Prefix the field name with a dash - to sort in reverse:

?order_by=-name

Multiple sorting fields may be specified by separating the field names with a comma ,:

?order_by=name,some_other_field

Searching

Use the search query string parameter to perform a case-insensitive search within all designated text fields of a model.

?search=findme

Search across related fields (added in AWX 1.4 / Ansible Tower 3.1):

?related__search=findme

Filtering

Any additional query string parameters may be used to filter the list of results returned to those matching a given value. Only fields and relations that exist in the database may be used for filtering. Any special characters in the specified value should be URL-encoded. For example:

?field=value%20xyz

Fields may also span relations, only for fields and relationships defined in the database:

?other__field=value

To exclude results matching certain criteria, prefix the field parameter with not__:

?not__field=value

By default, all query string filters are AND’ed together, so only the results matching all filters will be returned (added in AWX 1.4). To combine results matching any one of multiple criteria, prefix each query string parameter with or__:

?or__field=value&or__field=othervalue
?or__not__field=value&or__field=othervalue

The default AND filtering applies all filters simultaneously to each related object being filtered across database relationships (added in Ansible Tower 1.4.5). The chain filter instead applies filters separately for each related object. To use, prefix the query string parameter with chain__:

?chain__related__field=value&chain__related__field2=othervalue
?chain__not__related__field=value&chain__related__field2=othervalue

If the first query above were written as ?related__field=value&related__field2=othervalue, it would return only the primary objects where the same related object satisfied both conditions. As written using the chain filter, it would return the intersection of primary objects matching each condition.

Field lookups may also be used for more advanced queries, by appending the lookup to the field name:

?field__lookup=value

The following field lookups are supported:

  • exact: Exact match (default lookup if not specified).
  • iexact: Case-insensitive version of exact.
  • contains: Field contains value.
  • icontains: Case-insensitive version of contains.
  • startswith: Field starts with value.
  • istartswith: Case-insensitive version of startswith.
  • endswith: Field ends with value.
  • iendswith: Case-insensitive version of endswith.
  • regex: Field matches the given regular expression.
  • iregex: Case-insensitive version of regex.
  • gt: Greater than comparison.
  • gte: Greater than or equal to comparison.
  • lt: Less than comparison.
  • lte: Less than or equal to comparison.
  • isnull: Check whether the given field or related object is null; expects a boolean value.
  • in: Check whether the given field’s value is present in the list provided; expects a list of items.

Boolean values may be specified as True or 1 for true, False or 0 for false (both case-insensitive).

Null values may be specified as None or Null (both case-insensitive), though it is preferred to use the isnull lookup to explicitly check for null values.

Lists (for the in lookup) may be specified as a comma-separated list of values.

Filtering based on the requesting user’s level of access by query string parameter (added in Ansible Tower 3.1).

  • role_level: Level of role to filter on, such as admin_role

Create Organizations

Make a POST request to this resource with the following organization fields to create a new organization:

  • name: (string, required)
  • description: (string, default=””)

Reviewing the Options Endpoint

The Options Endpoint table offers a view of the Options for this endpoint. When viewing the endpoint in the browsable API, clicking the “Options” button gives you the raw JSON for the following:

name Organization List
description # List Organizations: Make a GET request to this resource to retrieve the list of organizations.
renders
0 application/json
1 text/html
parses
0 application/json
added_in_version 1.2
actions
POST
name
type string
required
true
label Name
max_length 512
help_text Name of this organization.
description
type string
required
false
label Description
help_text Optional description of this organization.
default (Empty Text)
GET
id
type integer
label ID
help_text Database ID for this organization.
type
type choice
label Type
help_text Data type for this organization.
choices
0
0 organization
1 Organization
url
type string
label URL
help_text URL for this organization.
related
type object
label Related
help_text Data structure with URLs of related resources.
summary_fields
type object
label Summary fields
help_text Data structure with name/description for related resources.
created
type datetime
label Created
help_text Timestamp when this organization was created.
modified
type datetime
label Modified
help_text Timestamp when this organization was last modified.
name
type string
label Name
help_text Name of this organization.
description
type string
label Description
help_text Optional description of this organization.
types
0 organization
search_fields
0 description
1 name