Searching / Filtering
Searching for packages is simple with Cloudsmith. The search syntax is fully "boolean", in that you can combine queries together with AND
(i.e. find this AND that), or OR
(i.e. find this OR that), or NOT
(i.e. find NOT this). This is optional, if you don't put any boolean operators (AND/OR) in, we'll just assume that you want AND
by default.
Search Terms
Search By | Search Terms Example |
---|---|
Name (name ) | name:my-package (package name contains "my-package") |
Filename (filename ) | filename:my-package.ext (filename contains "my-package.ext") |
Tag (tag ) | tag:latest (package has tag "latest") |
Version - String-based (version ) | version:^1.1.0$ (package version is exactly 1.1.0)version:1.1.0*post1 (package version contains 1.10 followed by post1). |
Version - Semantic (version ) | version:1.1.0 (package version is "1.1.0")version:>1.1.0 (package version is greater than "1.1.0")version:<1.1.0 (package version is less than "1.1.0")version:~=1.1.0 (package version is greater or equal to 1.1.0, but less than 1.2.0) |
Prerelease (prerelease ) | true (packages are prerelease)false (packages are not prerelease) |
Architecture (architecture ) | architecture:x86_64 (architecture is "x86_64") |
Distribution (distribution ) | distribution:el/7 (distribution is "el", release is "7") |
Format (format ) | format:deb (format is "deb" [debian]) |
Status (status ) | status:in_progress (status is "in_progress") |
File Checksum (checksum ) | checksum:5afba (checksum contains "5afba") |
Downloads (downloads ) | downloads:>8 (downloads greater than 8)downloads:<1000 (downloads less than 1000) |
Package Type (type ) | type:binary (Binary Packages)type:source (Source Packages)type:combined (Binary and Source Packages) |
Size in Bytes (size ) | size:>50000 (size is greater than 50000)size:<10000 (size is less than 10000) |
Uploaded Date (uploaded ) | uploaded:’1 day ago’ (uploaded more than one day ago)uploaded:’August 14, 2019 EST’ (uploaded on Aug 14th) |
Entitlement Token Identifier (token ) | token:3lKPVJPosCsY (packages visible for specified token) |
Dependencies (dependency ) | dependency:log4j (search for packages that have a dependency with "log4j" in the name).dependency:log4j=1.2.17 (search for packages dependencies name including "log4j" & version matching 1.2.17).dependency:log4j<2.0.0 (search for packages dependencies with name including "log4j" & version less than 2.0.0). |
Maven GroupID | maven_group_id:io.cloudsmith (Search for packages that contain the Maven GroupID io.cloudsmith) |
Repository (repository ) | repository:repo-name (Search for packages within the repository named "repo-name") |
For all queries you can use:
~
for negation. (Example: ~foo
)
For string queries you can use:
^
- to anchor to start of term. (Example: ^foo
)
$
- to anchor to end of term. (Example: foo$
)
*
- for fuzzy matching. (Example: foo*bar
)
For number or date queries you can use:
>
- for values greater than
. (Example: >foo
)
>=
- for values greater / equal
. (Example: >=foo
)
<
- for values less than. (Example: <foo
)
<=
- for values less / equal. (Example: <=foo
)
Please note, when you use a query like uploaded: >'1 month ago'
, that becomes uploaded > dd/mm/yy
(i.e, within the last month).
For version queries you can use:
>
- for versions greater than
. (Example: >1.2.3.
)
>=
- for versions greater / equal
. (Example: >=1.2.3
)
<
- for versions less than. (Example: <1.2.3
)
<=
- for versions less / equal. (Example: <=1.2.3
)
~=
- for versions greater than or equal to, upto the next incompatible version. (Example: ~=1.2.0
)
Remember: You can use any combination of
AND
,OR
andNOT
. You can use parentheses to group terms if required, asAND
has a higher precedence thanOR
, and it may change the meaning of queries without it.
A Short Working Example
Suppose that you had the following packages:
- AlphaLib, Version: 1.0
- AlphaLib, Version: 1.1
- AlphaLib, Version: 2.0
- BetaLib: Version: 0.9
To find "AlphaLib" packages that are in the version 1.x series only, your query would be:
name:^AlphaLib$ AND version:~=1.0.
Which would provide the following results:
- AlphaLib, Version: 1.0
- AlphaLib, Version: 1.1
To bring the query down, we added the following parts:
name:^AlphaLib$
- Find a package name that is exactly "AlphaLib". Without the^
(starts-with) and$
(ends-with), the query would be fuzzy, and potentially find packages called "AlphaLib2" or "FreeAlphaLib" too.AND
- We want to search for both the name and version together. Both must match for the results.version:~=1.0
- Find package versions that are at-least 1.0, upto the next incompatible version (2.0).
Searching Packages via the Website UI
At the top of each repository detail page is the search box:

Website UI Search Box
Additional help and examples are available by hovering over the "?" at the right side of the search box.
Searching Packages via the Cloudsmith API
Please see the Cloudsmith API interactive sandbox and the full API reference.
Searching Packages via the Cloudsmith CLI
To search packages using the Cloudsmith CLI, you use the cloudsmith list packages
command in combination with the -q
option:
cloudsmith list packages OWNER/REPOSITORY -q "SEARCH_TERMS"
Example
To search for all debian packages:
cloudsmith list packages cloudsmith/examples -q "format:deb"

CLI search for format "deb"
Example
To search for the latest rpm and composer packages:
cloudsmith list packages cloudsmith/examples -q "tag:latest AND (format:rpm OR format:composer)"

CLI search for tag "latest" and two formats
Example
To search for all python packages larger than 2KB with more than 50 downloads:
cloudsmith list packages cloudsmith/examples -q "format:python AND downloads:>50 AND size:>2048"

CLI search for python packages larger than 2KB with more than 50 downloads
Updated 4 months ago