Documentation

Credential List API Endpoint

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

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


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

The count field indicates the total number of credentials 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 credential records.

Results

Each credential data structure includes the following fields:

  • id: Database ID for this credential. (integer)
  • type: Data type for this credential. (choice)
    • credential: Credential
  • url: URL for this credential. (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 credential was created. (datetime)
  • modified: Timestamp when this credential was last modified. (datetime)
  • name: Name of this credential. (string)
  • description: Optional description of this credential. (string)
  • organization: Inherit permissions from organization roles. If provided on creation, do not give either user or team. (field)
  • credential_type: Specify the type of credential you want to create. Refer to the Ansible Tower documentation for details on each type. (field)
  • inputs: Enter inputs using either JSON or YAML syntax. Use the radio button to toggle between the two. Refer to the Ansible Tower documentation for example syntax. (field)

Sorting

To specify that credentials 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 Credentials

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

  • name: Name of this credential. (string, required)
  • description: Optional description of this credential. (string, default=””)
  • organization: Inherit permissions from organization roles. If provided on creation, do not give either user or team. (field, default=``None``)
  • user: Write-only field used to add user to owner role. If provided, do not give either team or organization. Only valid for creation. (field, default=``None``)
  • team: Write-only field used to add team to owner role. If provided, do not give either user or organization. Only valid for creation. (field, default=``None``)
  • credential_type: Specify the type of credential you want to create. Refer to the Ansible Tower documentation for details on each type. (field, required)
  • inputs: Enter inputs using either JSON or YAML syntax. Use the radio button to toggle between the two. Refer to the Ansible Tower documentation for example syntax. (field, default=``None``)

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 Credential List
description # List Credentials: Make a GET request to this resource to retrieve the list of credentials.
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 credential.
description
type string
required
false
label Description
help_text Optional description of this credential.
default (Empty Text)
organization
type field
required
false
label Organization
help_text Inherit permissions from organization roles. If provided on creation, do not give either user or team.
default null
user
type field
required
false
label User
help_text Write-only field used to add user to owner role. If provided, do not give either team or organization. Only valid for creation.
default null
write_only true
team
type field
required
false
label Team
help_text Write-only field used to add team to owner role. If provided, do not give either user or organization. Only valid for creation.
default null
write_only true
credential_type
type field
required
true
label Credential type
help_text Specify the type of credential you want to create. Refer to the Ansible Tower documentation for details on each type.
inputs
type field
required
false
label Inputs
help_text Enter inputs using either JSON or YAML syntax. Use the radio button to toggle between the two. Refer to the Ansible Tower documentation for example syntax.
default (Empty Object)
GET
id
type integer
label ID
help_text Database ID for this credential.
type
type choice
label Type
help_text Data type for this credential.
choices
0
0 credential
1 Credential
url
type string
label Url
help_text URL for this credential.
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 credential was created.
modified
type datetime
label Modified
help_text Timestamp when this credential was last modified.
name
type string
label Name
help_text Name of this credential.
description
type string
label Description
help_text Optional description of this credential.
organization
type field
label Organization
help_text Inherit permissions from organization roles. If provided on creation, do not give either user or team.
credential_type
type field
label Credential type
help_text Specify the type of credential you want to create. Refer to the Ansible Tower documentation for details on each type.
inputs
type field
label Inputs
help_text Enter inputs using either JSON or YAML syntax. Use the radio button to toggle between the two. Refer to the Ansible Tower documentation for example syntax.
types
0 credential
search_fields
0 description
1 name