Cloudsmith

The Cloudsmith Developer Hub

Welcome to the Cloudsmith developer hub. You'll find comprehensive guides and documentation to help you start working with Cloudsmith as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    
Suggest Edits

Introduction

 

The Cloudsmith REST (REpresentational State Transfer) API (Application Programming Interface) provides everything you love about Cloudsmith but in a programmatic machine-accessible RESTful format. We believe in providing a rich API to enable exciting and powerful integrations, hopefully in ways that we couldn't imagine - just like your favourite brick-like toys!

Let Us Know

If you're got any questions about the API, would like to request additional functionality or report bugs, or just want to tell someone about your latest and greatest integration, please don't hesitate to get in touch with us.

Suggest Edits

Endpoints / Versioning

 

The API is versioned to help reduce future compatibility issues if we need to change the API. The following is a list of the current API versions and their URI endpoints:

Version
Endpoint(s)
Date Available

Latest/Default API Version Compatibility

If not explicit version has been specified then the latest version of the API will always be accessible at https://api.cloudsmith.io/ - so for example if the latest version is v1 then this will point to the v1 API. If we release a new v2 API then https://api.cloudsmith.io/ will automatically point to the v2 API, which may break clients that don't expect it. In order to maximise compatibility (if you need it), you should consider pointing at the fully-qualified endpoint for the version you need, such as https://api.cloudsmith.io/v1/, or use one of the alternative methods (see below) for specifying the version.

In addition to explicitly specifying the endpoint in the URI, the following methods of specifying the version are supported by the Cloudsmith API:

Method
Description
Example

Accept Header

Specify the version in the Accept header when making requests.

Accept: application/json; version=v1

Query String

Specify the version in the query string when making requests.

https://api.cloudsmith.io/users/whoami/?version=v1

Suggest Edits

Root Endpoint / Sandbox

 

The root endpoint for the API provides a Swagger UI based sandbox for users to play with and explore the API.

OpenAPI Specification

It's possible to retrieve the OpenAPI Specification for the Cloudsmith API by passing format=openapi in a querystring to the root endpoint, for example: https://api.cloudsmith.io/?format=openapi

Suggest Edits

HTTP Verbs

 

The API attempts to be as RESTful as possible by using appropriate HTTP Verbs for each action, such as:

Verb
Description

OPTIONS

Used to retrieve the available HTTP verbs, name, description, input format (parsers) and output format (renderers) for a particular resource.

GET

Used for retrieving resources.

PUT

Used for replacing resources or collections.

POST

Used for creating resources.

PATCH

Used for partially updating an existing resource with one or more changes. For example, changing the description on a repository resource is a PATCH.

DELETE

Used to delete specific resources.

As described above the OPTIONS request will show the available HTTP verbs for a resource, in addition to some details about the resource itself. Let's see it in action:

curl -i -X OPTIONS  https://api.cloudsmith.io/users/whoami/

HTTP/1.0 200 OK
Allow: GET, OPTIONS
Content-Type: application/json
Date: Sun, 29 Jan 2017 18:02:54 GMT

{
  "name": "User Who Am I",
  "description": "View for showing the current user details.",
  "renders": ["application/json"],
  "parses": ["application/json"]
}
Suggest Edits

HTTP Responses

 

Being a responsible RESTful API the status codes that are sent in responses are matched as best as possible to the actual condition met. For example, when rate limiting 429 Too Many Requests is sent rather than twitters more esoteric (although funny) custom 420 Enhance Your Calm. The REST API Tutorial website has a fantastic reference for HTTP Status Codes. The following is a list of the most common status codes returned in responses:

Status Code
Description

200 OK

The request has succeeded. The information returned with the response is dependent on the method used in the request. For example: when a patch to an existing package has been processed.

201 Created

The request has been fulfilled and resulted in a new resource being created. For example: when a new repository has been created.

202 Accepted

The request has been accepted for processing, but the processing has not been completed. For example: when a package upload has been completed but not yet processed.

401 Unauthorized

The request requires user authentication. For example: viewing a private repository requires authentication and authorisation (permission to view the repository).

403 Forbidden

The server understood the request, but is refusing to fulfill it. Authorization will not help and the request SHOULD NOT be repeated. For example: sending requests to places that you shouldn't be. :smiley-cat+:

404 Not Found

The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent. For example: requesting a repository that doesn't exist (or one that you don't have permission to see).

422 Unprocessable Entity

The server understands the content type of the request entity, and the syntax of the request entity is correct but was unable to process the contained instructions. For example: sending a request that contains field validation errors (such as a missing field).

Suggest Edits

HTTP Redirects

 

The API uses HTTP redirection where appropriate, for example for resources that have moved location. Clients should assume that any requests may result in a redirection and handle it appropriately depending on the HTTP status code. All redirect responses will have a Location header field which contains the URI that the client should request next. The following status codes are used for redirection:

Status Code
Description

301

The requested resource has been permanently redirected. The URI that was used for the initial request has been superseded by the one specified in the Location. Any future requests should be directed to the new URI instead of the original URI.

302 , 307

The requested resource has been temporarily redirected. The URI that was used for the initial request is still valid but in this case the client should repeat the request to the URI in the Location header. Clients should continue to use the original URI in future requests.

Suggest Edits

Response Schema

 

The API is only accessible via HTTPS and all data is sent and received as JSON (unless otherwise specified by specific resource endpoints). For example:

curl -i -H "X-Api-Key: <key>" https://api.cloudsmith.io/users/whoami/

HTTP/1.0 200 OK
Content-Type: application/json
Vary: Cookie
x-content-type-options: nosniff
X-Frame-Options: SAMEORIGIN
X-RateLimit-Interval: 6.0
X-RateLimit-Limit: 1800
X-RateLimit-Remaining: 1799
X-RateLimit-Reset: 1485715956
Connection: close
Server: Cloudsmith MCP
Date: Sun, 29 Jan 2017 17:52:35 GMT

{
  "authenticated": true,
  "slug": "example",
  "slug_perm": "A8mbAfka2fGG",
  "name": "Example User",
  "email": "someone@example.com"
}

Other things to note:

  • Blank fields are included as "null" instead of being omitted.
  • Timestamps are always UTC and in the ECMA-262 format: YYYY-MM-DDTHH:MM:SS.SSSZ
  • You can specify pretty=true in the querystring to get formatted (indent=2) JSON.

Summary Resource Representations

When GET requests return a list of resources, or the resource is in the context of another resource (i.e. a sub-resource), the data for those resources only includes a subset of all the available attributes, i.e. a summary representation. This is due to performance reasons in which certain attributes are expensive to compute. In order to see the fully detailed representation of a resource, fetch it individually, where required.

Detailed Resource Representations

When requests for a specific resource are issued the fully detailed representation for that resource will be returned, which will include all attributes that are exposed by the API for that resource type. Note that this is subject to authentication, where certain resources will vary the amount of attributes returned depending on the authorisation of the authenticated user. Please refer to the documentation for specific resource endpoints for details.

Suggest Edits

Query Parameters

 

Many of the API resource endpoints take optional parameters, such as for filtering, in addition to standard ones for versioning and pagination. For GET requests, any parameter that isn't specified as part of the URI path can be specified as an HTTP query string parameter. For example, to retrieve packages for a repository that are currently awaiting synchronisation:

curl -i https://api.cloudsmith.io/package/example/repo/?status=awaiting_sync

For DELETE, PATCH, POST and PUT requests, any optional parameters should be specified within the body of the request, encoded as JSON with a Content-Type header specifying a value of application/json. For example, to delete packages for a repository that are currently awaiting synchronisation:

curl -i -H "Content-Type: application/json" -d '{"status": "awaiting_sync"}' -X DELETE https://api.cloudsmith.io/package/example/repo/
Suggest Edits

Error Handling

 

Expected errors that occur when interacting with the API result in a 4xx error code, which varies depending on the condition. All error responses contain at least a detail attribute that explains why the error has occurred. The following is a list of some of the most common errors that are encountered and why:

Not Authenticated

A 401 Unauthorized status code is sent when the resource endpoint expects the user to be authenticated but the user isn't. For example, if sending a request as an anonymous user to an authenticated endpoint the following error is sent as a response:

HTTP/1.0 401 Unauthorized
Allow: POST, OPTIONS
Content-Length: 58
Server: Cloudsmith MCP

{
  "detail": "Authentication credentials were not provided."
}

No Permissions

A 403 Forbidden status code is sent when the resource endpoint expects the user to have specific permissions, which will be detailed in the resource endpoint documentation. For example, if sending a request as an authenticated user to a resource endpoint in which we don't have permissions (such as one belonging to another user), the following error is sent as a response:

HTTP/1.0 401 Unauthorized
Allow: POST, OPTIONS
Content-Length: 63
Server: Cloudsmith MCP

{
  "detail": "You do not have permission to perform this action."
}

Variable Messages

The detail field in response can be customised by the resource endpoint, so it might be different than the text shown above.

Invalid JSON Object Error

A 400 Bad Request status code is sent when the body of the document is expected to be JSON encoded, but the actual content is otherwise. For example, if the body was sent as foo then the following error is sent as a response:

HTTP/1.0 400 Bad Request
Allow: POST, OPTIONS
Content-Length: 68
Content-Type: application/json
Server: Cloudsmith MCP

{
  "detail": "JSON parse error - No JSON object could be decoded"
}

Malformed JSON Error

A 400 Bad Request status code is sent when the body of the document is cannot be parsed as syntactically correct JSON. For example, if the body was sent as { then the following error is sent as a response:

HTTP/1.0 400 Bad Request
Content-Length: 79
Content-Type: application/json
Server: Cloudsmith MCP

{
  "detail": "JSON parse error - Expecting object: line 1 column 1 (char 0)"
}

Field Validation Error

A 422 Unprocess Entity status code is sent when the resource endpoint receives a JSON body that is syntactically but not semantically correct. These error responses contain a fields attribute that lists the specific fields affected by the error condition. For example, if the resource endpoint expected a filename attribute in the body to be populated but isn't then the following error is sent as a response:

HTTP/1.0 422 Unprocessable Entity
Content-Length: 132
Content-Type: application/json
Server: Cloudsmith MCP

{
  "fields": {
    "filename": [
      "This field may not be null."
    ]
  },
  "code": "invalid",
  "detail": "Invalid input."
}
Suggest Edits

Authentication

 

The majority of resources provided by the API require some form of authentication, which identifies the client to the API in the context of a particular user. Other resources are accessible anonymously so don't need authentication (although they may provided expanded detail for authenticated users). You can use the following methods to authenticate:

Basic Authentication

The simplest (but least recommended) way to authenticate is to provide your login email and password when making API requests (replacing <email> with your username and <password> with your password):

curl -u "<email>:<password>" https://api.cloudsmith.io/users/whoami/

Specifying an invalid email and/or password will result in an 401 Unauthorized status code, and the body will specify that invalid credentials were received. Let's see it in action:

curl -i -u "example:wrongpassword" -X OPTIONS https://api.cloudsmith.io/users/whoami/

HTTP/1.0 401 Unauthorized
Server: Werkzeug/0.11.11 Python/2.7.12
Date: Sun, 29 Jan 2017 18:40:49 GMT

{
  "detail": "Invalid username/password."
}

Security Warning - Access All Areas

We probably shouldn't need to say this but disclosure of your email and password will allow a malicious third-party to takeover your account and cause damage. We recommend using an API Key instead and using a lesser privileged account for API access - see Keep Your Secrets Close below for suggestions.

API Key / User Token Authentication

Instead of providing your email and password, it is recommended that you instead authenticate to the API by specifying your API Key.

You can specify your API Key via the X-Api-Key header when making requests (replacing <key> with your actual API Key):

curl -H "X-Api-Key: <key>" https://api.cloudsmith.io/users/whoami/

You can also specify your API Key via the Authorization header when making requests (replacing <key> with your actual API Key):

curl -H "Authorization: token <key>" https://api.cloudsmith.io/users/whoami/

Specifying an invalid token will result in an 401 Unauthorized status code, and the body will specify that an invalid token was received. Let's see it in action:

curl -i -H "X-Api-Key: foobar" -X OPTIONS https://api.cloudsmith.io/users/whoami/

HTTP/1.0 401 Unauthorized
Server: Werkzeug/0.11.11 Python/2.7.12
Date: Sun, 29 Jan 2017 18:38:24 GMT

{
  "detail":"Invalid token."
}

Getting Your API Key

You can find your API Key within your User Settings or you can request (or reset) it via the Users Token API Endpoint.

Security Warning - Keep Your Secrets Close

If your API key is given to someone else they will be able to access the API in its entirety as you (although they won't be able to login to the website itself, which makes this method slightly more secure that using Basic Authentication). This should be viewed as a security risk and every effort should be taken to protect your API Key from disclosure. If you need to add read-only access our suggestion is to create a lesser privileged bot-user account and use that instead for scripts/automation.

Suggest Edits

Rate Limiting

 

Unless specified otherwise, all requests to the API are rate limited to prevent abuse, accidental or otherwise. It is not intended for this rate limit to interfere with any legitimate use of the API. The limits vary depending on the type of client that is accessing the API, according to the following rules (unless specific otherwise by the specific API endpoint):

Client Type
Description
Limit

Non-Authenticated/Anonymous User

Users that are not logged in, requests are associated by IP address.

120 requests per hour.

Authenticated User w/ Non-Premium Plan

Users that are authenticated but do not have a premium (paid) subscription.

1800 requests per hour.

Authenticated User w/ Premium Plan

Users that are authenticated and have a premium (paid) subscription.

3600 requests per hour.

Need Higher Limits?

No problem! If you're on a non-premium plan then all you need to do is activate a premium plan. If you're already on a premium plan then we'll be happy to raise the limit for you, just send us a description of use case and the desired limit to us and we'll take care of it.

Every response from the API will include the following headers to provide information about the current rate limit status:

Header
Meaning
Example

X-RateLimit-Limit

The maximum number of requests that the client is permitted to send per hour.

600

X-RateLimit-Remaining

The number of requests that are remaining in the current rate limit window.

588

X-RateLimit-Reset

The UTC epoch timestamp at which the current rate limit window will reset.

1485706850

X-RateLimit-Interval

The time in seconds that client is suggested to wait until the next request in order to avoid consuming too much within the rate limit window.

0.98256663893

Retry-After

The time in seconds to wait before the next request will be allowed (only sent if the request has been throttled).

3384

Let's see it in action:

curl -i http://api.cloudsmith.io/users/whoami/

HTTP/1.0 200 OK
X-RateLimit-Interval: 60.0
X-RateLimit-Limit: 600
X-RateLimit-Remaining: 599
X-RateLimit-Reset: 1485712175
Date: Sun, 29 Jan 2017 16:49:34 GMT

If the client has exceeded the rate limit in a particular rate limit window a 429 Too Many Requests status code will be sent instead of acting upon the request. The body response will be JSON encoded and include a detail message. Let's see it in action:

curl -i http://api.cloudsmith.io/users/whoami/

HTTP/1.0 429 Too Many Requests
Allow: GET, OPTIONS
Content-Type: application/json
Retry-After: 3304
Vary: Cookie
x-content-type-options: nosniff
X-Frame-Options: SAMEORIGIN
X-RateLimit-Interval: 3303.55762601
X-RateLimit-Limit: 1
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1485712175
Date: Sun, 29 Jan 2017 16:54:30 GMT

{
  "detail": "Request was throttled. Expected available in 3304.0 seconds."
}
Suggest Edits

Pagination

 

API requests that return more than one item may be paginated, which simply means the total number of items is split into logical pages, in the same way that a book is split into pages. Each page will have a certain number of items in it from one upto the page limit - empty datasets are never paginated.

When pagination is enabled the following query string parameters are supported:

Parameter
Description

page

The current page of the pagination dataset to view. The page number is 1-based, so omitting or specifying a non-positive number will return the first page.

page_size

The page size to divide the dataset into. The default amount (if not specified) is 30 items per page and the maximum configurable is 100 items per page.

When pagination occurs, the following headers will be represent in API responses:

Header
Description

Link (based on RFC5988

Hypermedia links for the previous page (if any) and for the next page (if any). Some of which may require expansion as URI templates.

X-Pagination-Count

The total number of items in the dataset.

X-Pagination-Page

The number of the current page.

X-Pagination-PageTotal

The total number of pages in the dataset.

X-Pagination-PageSize

The size of each page in the dataset.

The Link header can contain the following rel values:

Name
Description

first

The link relation to the first page of results. This will only be present if there is more than one page.

prev

The link relation to the previous page of results. This will only be present if the client has requested a page greater than 1.

next

The link relation to the next page of results. This will only be present if the client has requested a page less than the last/final page.

last

The link relation to the last/final page of results. This will only be present if there is more than one page.

Let's see it in action:

curl -i -H "X-Api-Key: <key>" 'https://api.cloudsmith.io/package/example/repo/packages/?page=2&page_size=1'

HTTP/1.0 200 OK
Allow: GET, OPTIONS
Content-Type: application/json
Link: <https://api.cloudsmith.io/package/example/repo/packages/?page=1>; rel="first", <https://api.cloudsmith.io/package/example/repo/packages/?page=1>; rel="prev", <https://api.cloudsmith.io/package/example/repo/packages/?page=3>; rel="next", <https://api.cloudsmith.io/package/example/repo/packages/?page=3>; rel="last"
X-Pagination-Count: 3
X-Pagination-Page: 2
X-Pagination-PageTotal: 3
X-Pagination-PageSize: 1
Server: Cloudsmith MCP
Date: Sun, 29 Jan 2017 18:40:55 GMT

[snip]

Page Sizes / Remainders

If the page size is 100 and the dataset size is 400, then there will be 4 pages available for retrieval. If the dataset isn't cleanly divided by the page size the remainder will be on the final page. For example, if the page size is 100 and the dataset size is 350 then the last (4th) page will have 50 items on it.

Suggest Edits

Conditional Requests

 

Where responses reference non-ephemeral resources, such as packages, the API will return an ETag header that represents a uniqueness identifier for the results. If an ETag is sent then the API might also send a Last-Modified header if it knows when the resource was last updated, but it's better to rely on the ETag alone. A client can send the If-None-Match header with the value of the known ETag to avoid returning the full resource again, in which case a match will result in a 304 Not Modified status being returned instead.

Let's see it in action:

curl -i -H "X-Api-Key: foobar" https://api.cloudsmith.io/users/whoami/

HTTP/1.0 200 OK
Content-Type: application/json
ETag: "99ed160b320d4daa29fcd6097de8cdAf"
Connection: close
Server: Cloudsmith MCP
Date: Sun, 29 Jan 2017 23:56:34 GMT

{
  "authenticated": true,
  "slug": "example",
  "slug_perm": "ABbx54bagaAB",
  "name": "Example User",
  "email": "user@example.com"
}

curl -i -H "X-Api-Key: foobar" -H "If-None-Match: 99ed160b320d4daa29fcd6097de8cdAf" https://api.cloudsmith.io/users/whoami/

HTTP/1.0 304 Not Modified
content-type: text/plain
ETag: "99ed160b320d4daa29fcd6097de8cdAf"
Server: Cloudsmith MCP
Date: Sun, 29 Jan 2017 23:57:20 GMT

Rate Limiting

If If-None-Match or Is-Modified-Since (where Last-Modified was sent) is used and results in a 304 Not Modified response, the client will not incur any changes to their current rate limit usage. In other words, unmodified resources do not count towards rate limits.

Suggest Edits

Cross-Origin Resource Sharing

 

The API supports Cross-Origin Resource Sharing (CORS) for requests from any origin. For more details on CORS and how it affects requests please refer to the W3 CORS Specification and this document on CORS-related security. When an Origin header is specified in the request, the following headers are added to requests, varying depending on whether the request is a preflight request (such as using the OPTIONS method) or otherwise:

Header
Preflight Only
Description

Access-Control-Allow-Credentials

NO

Indicates whether the response to request can be exposed. For preflight requests it indicates that the actual request can include user credentials.

Access-Control-Allow-Headers

YES

Indicates which header field names can be used during the actual request.

Access-Control-Allow-Methods

YES

Indicates which methods can be used during the actual request.

Access-Control-Allow-Origin

NO

Indicates whether a resource can be shared by returning the value of the Origin request header, "*", or "null".

Access-Control-Expose-Headers

NO

Indicates which headers are safe to be exposed.

Access-Control-Max-Age

YES

Indicates how long the results of the preflight request can be cached for.

Let's see it in action for a preflight request when the browser goes to https://example.com:

curl -i -X OPTIONS -H "Origin: https://example.com" https://api.cloudsmith.io/users/whoami/

HTTP/1.0 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: accept, accept-encoding, authorization, content-type, dnt, origin, user-agent, x-csrftoken, x-requested-with
Access-Control-Allow-Methods: DELETE, GET, OPTIONS, PATCH, POST, PUT
Access-Control-Allow-Origin: https://example.com
Access-Control-Expose-Headers: ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-RateLimit-Interval, X-OAuth-Scopes, X-Accepted-OAuth-Scopes
Access-Control-Max-Age: 86400
[snip]

Then for the actual non-preflight request:

curl -i -H "Origin: https://example.com" https://api.cloudsmith.io/users/whoami/

HTTP/1.0 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: https://example.com
Access-Control-Expose-Headers: ETag, Link, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-RateLimit-Interval, X-OAuth-Scopes, X-Accepted-OAuth-Scopes
[snip]
Suggest Edits

JSONP Not Supported

 

As per the JSONP Wikipedia article: JSONP (JSON with Padding or JSON-P) is a technique used by web developers to bypass the restrictions of browsers' same-origin policy. Due to JSONP being only appropriate for global unauthenticated resources, the Cloudsmith API explicitly doesn't support JSONP and currently has no plans to implement it. Our recommendation is to utilise CORS instead.

 
Suggest Edits

Get a list of all supported distributions.

Get a list of all supported distributions.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//distros/
curl --request GET \
  --url https://api.cloudsmith.io//distros/
var request = require("request");

var options = { method: 'GET', url: 'https://api.cloudsmith.io//distros/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//distros/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//distros/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//distros/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Available package formats retrieved

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

View for viewing/listing package formats.

View for viewing/listing package formats.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//distros/slug/
curl --request GET \
  --url https://api.cloudsmith.io//distros/slug/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//distros/slug/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//distros/slug/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//distros/slug/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//distros/slug/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

slug
string
required

Response

OK

formatstring
format_urlstring
namestring
self_urlstring
slugstring

The slug identifier for this distribution

variantsstring
versionsarray

A list of the versions for this distribution

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

entitlements

 
Suggest Edits

Get a list of all entitlements in a repository.

Get a list of all entitlements in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//entitlements/owner/repo/
curl --request GET \
  --url https://api.cloudsmith.io//entitlements/owner/repo/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//entitlements/owner/repo/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Query Params

page
integer

A page number within the paginated result set.

page_size
integer

Number of results to return per page.

show_tokens
boolean

Show entitlement token strings in results

Response

Retrieved the list of entitlement tokens

Request could not be processed (see detail)

detailstring

An extended message for the response.

Owner namespace or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a specific entitlement in a repository.

Create a specific entitlement in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//entitlements/owner/repo/
curl --request POST \
  --url https://api.cloudsmith.io//entitlements/owner/repo/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//entitlements/owner/repo/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Query Params

show_tokens
boolean

Show entitlement token strings in results

Body Params

is_active
boolean

If enabled, the token will allow downloads based on configured restrictions (if any).

limit_date_range_from
string

The starting date/time the token is allowed to be used from.

limit_date_range_to
string

The ending date/time the token is allowed to be used until.

limit_num_clients
integer

The maximum number of unique clients allowed for the token. Please note that since clients are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_num_downloads
integer

The maximum number of downloads allowed for the token. Please note that since downloads are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_package_query
string

The package-based search query to apply to restrict downloads to. This uses the same syntax as the standard search used for repositories, and also supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. This will still allow access to non-package files, such as metadata. For package formats that support dynamic metadata indexes, the contents of the metadata will also be filtered.

limit_path_query
string

The path-based search query to apply to restrict downloads to. This supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. The path evaluated does not include the domain name, the namespace, the entitlement code used, the package format, etc. and it always starts with a forward slash.

metadata
object

None

 
name
string
required

None

token
string

None

Response

Created the specified entitlement

created_atstring
created_bystring
created_by_urlstring
defaultboolean

If selected this is the default token for this repository.

has_limitsstring
identifierinteger
is_activeboolean

If enabled, the token will allow downloads based on configured restrictions (if any).

is_limitedstring
limit_date_range_fromstring

The starting date/time the token is allowed to be used from.

limit_date_range_tostring

The ending date/time the token is allowed to be used until.

limit_num_clientsinteger

The maximum number of unique clients allowed for the token. Please note that since clients are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_num_downloadsinteger

The maximum number of downloads allowed for the token. Please note that since downloads are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_package_querystring

The package-based search query to apply to restrict downloads to. This uses the same syntax as the standard search used for repositories, and also supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. This will still allow access to non-package files, such as metadata. For package formats that support dynamic metadata indexes, the contents of the metadata will also be filtered.

limit_path_querystring

The path-based search query to apply to restrict downloads to. This supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. The path evaluated does not include the domain name, the namespace, the entitlement code used, the package format, etc. and it always starts with a forward slash.

metadataobject
namestring
refresh_urlstring
self_urlstring
slug_permstring
tokenstring
updated_atstring
updated_bystring
updated_by_urlstring
userstring
user_urlstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Owner namespace or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Synchronise tokens from a source repository.

Synchronise tokens from a source repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//entitlements/owner/repo/sync/
curl --request POST \
  --url https://api.cloudsmith.io//entitlements/owner/repo/sync/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/sync/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/sync/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//entitlements/owner/repo/sync/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/sync/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

source
string
required

The source repository slug (in the same owner namespace).

Response

The tokens have been synchronised from the source repository

tokensarray

The entitlements that have been synchronised.

Request could not be processed (see detail)

detailstring

An extended message for the response.

Owner namespace or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Delete a specific entitlement in a repository.

Delete a specific entitlement in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
deletehttps://api.cloudsmith.io//entitlements/owner/repo/identifier/
curl --request DELETE \
  --url https://api.cloudsmith.io//entitlements/owner/repo/identifier/
var request = require("request");

var options = { method: 'DELETE',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/identifier/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/identifier/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.cloudsmith.io//entitlements/owner/repo/identifier/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/identifier/"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Response

Deleted the specified entitlement token successfully

The entitlement cannot be deleted

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Get a specific entitlement in a repository.

Get a specific entitlement in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//entitlements/owner/repo/identifier/
curl --request GET \
  --url https://api.cloudsmith.io//entitlements/owner/repo/identifier/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/identifier/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/identifier/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//entitlements/owner/repo/identifier/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/identifier/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Query Params

show_tokens
boolean

Show entitlement token strings in results

Response

Retrieved the specified entitlement

created_atstring
created_bystring
created_by_urlstring
defaultboolean

If selected this is the default token for this repository.

has_limitsstring
identifierinteger
is_activeboolean

If enabled, the token will allow downloads based on configured restrictions (if any).

is_limitedstring
limit_date_range_fromstring

The starting date/time the token is allowed to be used from.

limit_date_range_tostring

The ending date/time the token is allowed to be used until.

limit_num_clientsinteger

The maximum number of unique clients allowed for the token. Please note that since clients are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_num_downloadsinteger

The maximum number of downloads allowed for the token. Please note that since downloads are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_package_querystring

The package-based search query to apply to restrict downloads to. This uses the same syntax as the standard search used for repositories, and also supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. This will still allow access to non-package files, such as metadata. For package formats that support dynamic metadata indexes, the contents of the metadata will also be filtered.

limit_path_querystring

The path-based search query to apply to restrict downloads to. This supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. The path evaluated does not include the domain name, the namespace, the entitlement code used, the package format, etc. and it always starts with a forward slash.

metadataobject
namestring
refresh_urlstring
self_urlstring
slug_permstring
tokenstring
updated_atstring
updated_bystring
updated_by_urlstring
userstring
user_urlstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Owner namespace or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Update a specific entitlement in a repository.

Update a specific entitlement in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
patchhttps://api.cloudsmith.io//entitlements/owner/repo/identifier/
curl --request PATCH \
  --url https://api.cloudsmith.io//entitlements/owner/repo/identifier/
var request = require("request");

var options = { method: 'PATCH',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/identifier/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/identifier/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PATCH", "https://api.cloudsmith.io//entitlements/owner/repo/identifier/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/identifier/"

response = requests.request("PATCH", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Query Params

show_tokens
boolean

Show entitlement token strings in results

Body Params

is_active
boolean

If enabled, the token will allow downloads based on configured restrictions (if any).

limit_date_range_from
string

The starting date/time the token is allowed to be used from.

limit_date_range_to
string

The ending date/time the token is allowed to be used until.

limit_num_clients
integer

The maximum number of unique clients allowed for the token. Please note that since clients are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_num_downloads
integer

The maximum number of downloads allowed for the token. Please note that since downloads are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_package_query
string

The package-based search query to apply to restrict downloads to. This uses the same syntax as the standard search used for repositories, and also supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. This will still allow access to non-package files, such as metadata. For package formats that support dynamic metadata indexes, the contents of the metadata will also be filtered.

limit_path_query
string

The path-based search query to apply to restrict downloads to. This supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. The path evaluated does not include the domain name, the namespace, the entitlement code used, the package format, etc. and it always starts with a forward slash.

metadata
object

None

 
name
string

None

token
string

None

Response

Updated the specified entitlement

created_atstring
created_bystring
created_by_urlstring
defaultboolean

If selected this is the default token for this repository.

has_limitsstring
identifierinteger
is_activeboolean

If enabled, the token will allow downloads based on configured restrictions (if any).

is_limitedstring
limit_date_range_fromstring

The starting date/time the token is allowed to be used from.

limit_date_range_tostring

The ending date/time the token is allowed to be used until.

limit_num_clientsinteger

The maximum number of unique clients allowed for the token. Please note that since clients are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_num_downloadsinteger

The maximum number of downloads allowed for the token. Please note that since downloads are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_package_querystring

The package-based search query to apply to restrict downloads to. This uses the same syntax as the standard search used for repositories, and also supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. This will still allow access to non-package files, such as metadata. For package formats that support dynamic metadata indexes, the contents of the metadata will also be filtered.

limit_path_querystring

The path-based search query to apply to restrict downloads to. This supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. The path evaluated does not include the domain name, the namespace, the entitlement code used, the package format, etc. and it always starts with a forward slash.

metadataobject
namestring
refresh_urlstring
self_urlstring
slug_permstring
tokenstring
updated_atstring
updated_bystring
updated_by_urlstring
userstring
user_urlstring

The entitlement cannot be edited

detailstring

An extended message for the response.

Owner namespace or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Disable an entitlement token in a repository.

Disable an entitlement token in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//entitlements/owner/repo/identifier/disable/
curl --request POST \
  --url https://api.cloudsmith.io//entitlements/owner/repo/identifier/disable/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/identifier/disable/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/identifier/disable/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//entitlements/owner/repo/identifier/disable/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/identifier/disable/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Response

The entitlement token has been disabled

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Enable an entitlement token in a repository.

Enable an entitlement token in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//entitlements/owner/repo/identifier/enable/
curl --request POST \
  --url https://api.cloudsmith.io//entitlements/owner/repo/identifier/enable/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/identifier/enable/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/identifier/enable/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//entitlements/owner/repo/identifier/enable/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/identifier/enable/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Response

The entitlement token has been enabled

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Refresh an entitlement token in a repository.

Refresh an entitlement token in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//entitlements/owner/repo/identifier/refresh/
curl --request POST \
  --url https://api.cloudsmith.io//entitlements/owner/repo/identifier/refresh/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/identifier/refresh/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/identifier/refresh/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//entitlements/owner/repo/identifier/refresh/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/identifier/refresh/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Query Params

show_tokens
boolean

Show entitlement token strings in results

Body Params

is_active
boolean

If enabled, the token will allow downloads based on configured restrictions (if any).

limit_date_range_from
string

The starting date/time the token is allowed to be used from.

limit_date_range_to
string

The ending date/time the token is allowed to be used until.

limit_num_clients
integer

The maximum number of unique clients allowed for the token. Please note that since clients are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_num_downloads
integer

The maximum number of downloads allowed for the token. Please note that since downloads are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_package_query
string

The package-based search query to apply to restrict downloads to. This uses the same syntax as the standard search used for repositories, and also supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. This will still allow access to non-package files, such as metadata. For package formats that support dynamic metadata indexes, the contents of the metadata will also be filtered.

limit_path_query
string

The path-based search query to apply to restrict downloads to. This supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. The path evaluated does not include the domain name, the namespace, the entitlement code used, the package format, etc. and it always starts with a forward slash.

metadata
object

None

 
token
string

None

Response

The entitlement token has been refreshed

created_atstring
created_bystring
created_by_urlstring
defaultboolean

If selected this is the default token for this repository.

has_limitsstring
identifierinteger
is_activeboolean

If enabled, the token will allow downloads based on configured restrictions (if any).

is_limitedstring
limit_date_range_fromstring

The starting date/time the token is allowed to be used from.

limit_date_range_tostring

The ending date/time the token is allowed to be used until.

limit_num_clientsinteger

The maximum number of unique clients allowed for the token. Please note that since clients are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_num_downloadsinteger

The maximum number of downloads allowed for the token. Please note that since downloads are calculated asynchronously (after the download happens), the limit may not be imposed immediately but at a later point.

limit_package_querystring

The package-based search query to apply to restrict downloads to. This uses the same syntax as the standard search used for repositories, and also supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. This will still allow access to non-package files, such as metadata. For package formats that support dynamic metadata indexes, the contents of the metadata will also be filtered.

limit_path_querystring

The path-based search query to apply to restrict downloads to. This supports boolean logic operators such as OR/AND/NOT and parentheses for grouping. The path evaluated does not include the domain name, the namespace, the entitlement code used, the package format, etc. and it always starts with a forward slash.

metadataobject
namestring
refresh_urlstring
self_urlstring
slug_permstring
tokenstring
updated_atstring
updated_bystring
updated_by_urlstring
userstring
user_urlstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Reset the statistics for an entitlement token in a repository.

Reset the statistics for an entitlement token in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//entitlements/owner/repo/identifier/reset/
curl --request POST \
  --url https://api.cloudsmith.io//entitlements/owner/repo/identifier/reset/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//entitlements/owner/repo/identifier/reset/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//entitlements/owner/repo/identifier/reset/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//entitlements/owner/repo/identifier/reset/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//entitlements/owner/repo/identifier/reset/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Response

The entitlement token statistics have been reset

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Request URL(s) to POST new package file upload(s) to.

Request URL(s) to POST new package file upload(s) to.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//files/owner/repo/
curl --request POST \
  --url https://api.cloudsmith.io//files/owner/repo/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//files/owner/repo/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//files/owner/repo/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//files/owner/repo/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//files/owner/repo/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

filename
string
required

Filename for the package file upload.

md5_checksum
string
required

MD5 checksum for the package file upload.

Response

The upload request was accepted

identifierstring

The identifier for the file to use when creating packages

upload_fieldsobject

The dictionary of fields that must be sent with POST uploads

upload_urlstring

The URL to use for the next-step POST upload

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters used for create.

Validate parameters used for create.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//files/owner/repo/validate/
curl --request POST \
  --url https://api.cloudsmith.io//files/owner/repo/validate/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//files/owner/repo/validate/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//files/owner/repo/validate/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//files/owner/repo/validate/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//files/owner/repo/validate/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

filename
string
required

Filename for the package file upload.

md5_checksum
string
required

MD5 checksum for the package file upload.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

 
Suggest Edits

Get a list of all supported package formats.

Get a list of all supported package formats.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//formats/
curl --request GET \
  --url https://api.cloudsmith.io//formats/
var request = require("request");

var options = { method: 'GET', url: 'https://api.cloudsmith.io//formats/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//formats/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//formats/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//formats/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Available package formats retrieved

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Get a specific supported package format.

Get a specific supported package format.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//formats/slug/
curl --request GET \
  --url https://api.cloudsmith.io//formats/slug/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//formats/slug/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//formats/slug/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//formats/slug/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//formats/slug/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

slug
string
required

Response

OK

descriptionstring

Description of the package format

distributionsarray

The distributions supported by this package format

extensionsarray

A non-exhaustive list of extensions supported

namestring

Name for the package format

premiumboolean

If true the package format is a premium-only feature

premium_plan_idstring

The minimum plan id required for this package format

premium_plan_namestring

The minimum plan name required for this package format

slugstring

Slug for the package format

supportsobject

A set of what the package format supports

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

namespaces

 
Suggest Edits

Get a list of all namespaces the user belongs to.

Get a list of all namespaces the user belongs to.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//namespaces/
curl --request GET \
  --url https://api.cloudsmith.io//namespaces/
var request = require("request");

var options = { method: 'GET', url: 'https://api.cloudsmith.io//namespaces/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//namespaces/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//namespaces/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//namespaces/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

page
integer

A page number within the paginated result set.

page_size
integer

Number of results to return per page.

Response

OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Views for working with namespaces.

Views for working with namespaces.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//namespaces/slug/
curl --request GET \
  --url https://api.cloudsmith.io//namespaces/slug/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//namespaces/slug/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//namespaces/slug/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//namespaces/slug/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//namespaces/slug/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

slug
string
required

Response

OK

namestring
slugstring
slug_permstring
type_namestring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Get a list of all the organizations you are associated with.

Get a list of all the organizations you are associated with.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//orgs/
curl --request GET \
  --url https://api.cloudsmith.io//orgs/
var request = require("request");

var options = { method: 'GET', url: 'https://api.cloudsmith.io//orgs/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//orgs/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//orgs/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//orgs/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

page
integer

A page number within the paginated result set.

page_size
integer

Number of results to return per page.

Response

OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Views for working with organizations.

Views for working with organizations.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//orgs/slug/
curl --request GET \
  --url https://api.cloudsmith.io//orgs/slug/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//orgs/slug/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//orgs/slug/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//orgs/slug/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//orgs/slug/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

slug
string
required

Response

OK

countryinteger

The country your organization is based in.

created_atstring
locationstring

The city/town/area your organization is based in.

namestring

A descriptive name for your organization.

slugstring
slug_permstring
taglinestring

A short public descriptive for your organization.

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

 
Suggest Edits

Views for working with repository packages.

Views for working with repository packages.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//packages/owner/repo/
curl --request GET \
  --url https://api.cloudsmith.io//packages/owner/repo/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//packages/owner/repo/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//packages/owner/repo/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Query Params

page
integer

A page number within the paginated result set.

page_size
integer

Number of results to return per page.

query
string

A search term for querying names, filenames, versions, distributions, architectures, formats or statuses of packages.

Response

OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Alpine package

Create a new Alpine package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/alpine/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/alpine/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/alpine/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/alpine/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/alpine/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/alpine/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

distribution
string
required

The distribution to store the package for.

package_file
string
required

The primary file for the package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Composer package

Create a new Composer package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/composer/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/composer/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/composer/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/composer/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/composer/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/composer/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

package_file
string
required

The primary file for the package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Debian package

Create a new Debian package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/deb/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/deb/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/deb/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/deb/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/deb/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/deb/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

distribution
string
required

The distribution to store the package for.

package_file
string
required

The primary file for the package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Maven package

Create a new Maven package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/maven/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/maven/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/maven/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/maven/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/maven/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/maven/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

artifact_id
string

The ID of the artifact.

group_id
string

Artifact's group ID.

javadoc_file
string

Adds bundled Java documentation to the Maven package

package_file
string
required

The primary file for the package.

packaging
string

Artifact's Maven packaging type.

pom_file
string

The POM file is an XML file containing the Maven coordinates.

sources_file
string

Adds bundled Java source code to the Maven package.

version
string

The version of this package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
artifact_idstring

The ID of the artifact.

cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
group_idstring

Artifact's group ID.

identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

packagingstring

Artifact's Maven packaging type.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Npm package

Create a new Npm package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/npm/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/npm/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/npm/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/npm/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/npm/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/npm/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

npm_dist_tag
string

The default NPM dist-tag for this package/version - This will replace any other package/version if they are using the same tag.

package_file
string
required

The primary file for the package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Python package

Create a new Python package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/python/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/python/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/python/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/python/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/python/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/python/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

package_file
string
required

The primary file for the package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Raw package

Create a new Raw package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/raw/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/raw/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/raw/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/raw/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/raw/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/raw/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

description
string

A textual description of this package.

package_file
string
required

The primary file for the package.

summary
string

A one-liner synopsis of this package.

version
string

The version of this package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new RedHat package

Create a new RedHat package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/rpm/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/rpm/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/rpm/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/rpm/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/rpm/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/rpm/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

distribution
string
required

The distribution to store the package for.

package_file
string
required

The primary file for the package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Ruby package

Create a new Ruby package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/ruby/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/ruby/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/ruby/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/ruby/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/ruby/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/ruby/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

package_file
string
required

The primary file for the package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a new Vagrant package

Create a new Vagrant package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/upload/vagrant/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/upload/vagrant/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/upload/vagrant/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/upload/vagrant/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/upload/vagrant/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/upload/vagrant/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

name
string
required

The name of this package.

package_file
string
required

The primary file for the package.

provider
string
required

The virtual machine provider for the box.

version
string
required

The version of this package.

Response

Upload acknowledged and queued for synchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

providerstring

The virtual machine provider for the box.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Alpine package

Validate parameters for create Alpine package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/alpine/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/alpine/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/alpine/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/alpine/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/alpine/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/alpine/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

distribution
string
required

The distribution to store the package for.

package_file
string
required

The primary file for the package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Composer package

Validate parameters for create Composer package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/composer/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/composer/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/composer/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/composer/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/composer/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/composer/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

package_file
string
required

The primary file for the package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Debian package

Validate parameters for create Debian package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/deb/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/deb/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/deb/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/deb/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/deb/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/deb/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

distribution
string
required

The distribution to store the package for.

package_file
string
required

The primary file for the package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Maven package

Validate parameters for create Maven package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/maven/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/maven/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/maven/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/maven/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/maven/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/maven/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

artifact_id
string

The ID of the artifact.

group_id
string

Artifact's group ID.

javadoc_file
string

Adds bundled Java documentation to the Maven package

package_file
string
required

The primary file for the package.

packaging
string

Artifact's Maven packaging type.

pom_file
string

The POM file is an XML file containing the Maven coordinates.

sources_file
string

Adds bundled Java source code to the Maven package.

version
string

The version of this package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Npm package

Validate parameters for create Npm package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/npm/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/npm/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/npm/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/npm/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/npm/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/npm/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

npm_dist_tag
string

The default NPM dist-tag for this package/version - This will replace any other package/version if they are using the same tag.

package_file
string
required

The primary file for the package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Python package

Validate parameters for create Python package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/python/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/python/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/python/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/python/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/python/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/python/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

package_file
string
required

The primary file for the package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Raw package

Validate parameters for create Raw package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/raw/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/raw/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/raw/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/raw/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/raw/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/raw/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

description
string

A textual description of this package.

package_file
string
required

The primary file for the package.

summary
string

A one-liner synopsis of this package.

version
string

The version of this package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create RedHat package

Validate parameters for create RedHat package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/rpm/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/rpm/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/rpm/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/rpm/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/rpm/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/rpm/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

distribution
string
required

The distribution to store the package for.

package_file
string
required

The primary file for the package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Ruby package

Validate parameters for create Ruby package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/ruby/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/ruby/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/ruby/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/ruby/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/ruby/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/ruby/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

package_file
string
required

The primary file for the package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Validate parameters for create Vagrant package

Validate parameters for create Vagrant package

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/validate-upload/vagrant/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/validate-upload/vagrant/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/validate-upload/vagrant/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/validate-upload/vagrant/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/validate-upload/vagrant/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/validate-upload/vagrant/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

name
string
required

The name of this package.

package_file
string
required

The primary file for the package.

provider
string
required

The virtual machine provider for the box.

version
string
required

The version of this package.

Response

Validation was successful, parameters are OK

Request could not be processed (see detail)

detailstring

An extended message for the response.

Namespace (owner) or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Delete a specific package in a repository.

Delete a specific package in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
deletehttps://api.cloudsmith.io//packages/owner/repo/identifier/
curl --request DELETE \
  --url https://api.cloudsmith.io//packages/owner/repo/identifier/
var request = require("request");

var options = { method: 'DELETE',
  url: 'https://api.cloudsmith.io//packages/owner/repo/identifier/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/identifier/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.cloudsmith.io//packages/owner/repo/identifier/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/identifier/"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Response

Deleted the specified package successfully

The package cannot be deleted

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Get a specific package in a repository.

Get a specific package in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//packages/owner/repo/identifier/
curl --request GET \
  --url https://api.cloudsmith.io//packages/owner/repo/identifier/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//packages/owner/repo/identifier/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/identifier/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//packages/owner/repo/identifier/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/identifier/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Response

Retrieved the specified package successfully

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Copy a package to another repository.

Copy a package to another repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/identifier/copy/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/identifier/copy/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/identifier/copy/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/identifier/copy/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/identifier/copy/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/identifier/copy/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Body Params

destination
string
required

None

Response

Copied specified package to destination repository

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring

The repository the package will be copied to.

repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Move a package to another repository.

Move a package to another repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/identifier/move/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/identifier/move/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/identifier/move/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/identifier/move/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/identifier/move/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/identifier/move/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Body Params

destination
string
required

None

Response

Moved specified package to destination repository

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring

The repository the package will be moved to.

repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Schedule a package for resynchronisation.

Schedule a package for resynchronisation.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//packages/owner/repo/identifier/resync/
curl --request POST \
  --url https://api.cloudsmith.io//packages/owner/repo/identifier/resync/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//packages/owner/repo/identifier/resync/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/identifier/resync/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//packages/owner/repo/identifier/resync/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/identifier/resync/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Response

Scheduled the package for resynchronisation

architecturesarray
cdn_urlstring
checksum_md5string
checksum_sha1string
checksum_sha256string
checksum_sha512string
descriptionstring

A textual description of this package.

distroobject
distro_versionobject
downloadsinteger
epochinteger

The epoch of the package version (if any).

extensionstring
filenamestring
filesarray
formatstring
format_urlstring
identifierinteger
indexedboolean
is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
licensestring

The license of this package.

namestring

The name of this package.

namespacestring
namespace_urlstring
num_filesinteger
package_typeinteger

The type of package contents.

releasestring

The release of the package version (if any).

repositorystring
repository_urlstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the package.

slugstring
slug_permstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

status_urlstring
subtypestring
summarystring

A one-liner synopsis of this package.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

type_displaystring
uploaded_atstring

The date this package was uploaded.

uploaderstring
uploader_urlstring
versionstring

The version of this package.

version_origstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Get the synchronisation status for a package.

Get the synchronisation status for a package.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//packages/owner/repo/identifier/status/
curl --request GET \
  --url https://api.cloudsmith.io//packages/owner/repo/identifier/status/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//packages/owner/repo/identifier/status/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//packages/owner/repo/identifier/status/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//packages/owner/repo/identifier/status/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//packages/owner/repo/identifier/status/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required
identifier
string
required

Response

Retrieved status for specified package

is_sync_awaitingboolean
is_sync_completedboolean
is_sync_failedboolean
is_sync_in_flightboolean
is_sync_in_progressboolean
self_urlstring
stageinteger

The synchronisation (in progress) stage of the package.

stage_strstring
stage_updated_atstring

The datetime the package stage was updated at.

statusinteger

The synchronisation status of the package.

status_reasonstring

A textual description for the synchronous status reason (if any

status_strstring
status_updated_atstring

The datetime the package status was updated at.

sync_finished_atstring

The datetime the package sync was finished at.

sync_progressinteger

Synchronisation progress (from 0-100)

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Endpoint to check rate limits for current user.

Endpoint to check rate limits for current user.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//rates/limits/
curl --request GET \
  --url https://api.cloudsmith.io//rates/limits/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//rates/limits/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//rates/limits/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//rates/limits/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//rates/limits/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Rate check was successful

resourcesobject

Rate limit values per resource

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Get a list of all repositories associated with current user.

Get a list of all repositories associated with current user.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//repos/
curl --request GET \
  --url https://api.cloudsmith.io//repos/
var request = require("request");

var options = { method: 'GET', url: 'https://api.cloudsmith.io//repos/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//repos/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//repos/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//repos/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

page
integer

A page number within the paginated result set.

page_size
integer

Number of results to return per page.

Response

Retrieved the list of repositories

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Get a list of all repositories within a namespace.

Get a list of all repositories within a namespace.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//repos/owner/
curl --request GET \
  --url https://api.cloudsmith.io//repos/owner/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//repos/owner/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//repos/owner/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//repos/owner/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//repos/owner/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required

Query Params

page
integer

A page number within the paginated result set.

page_size
integer

Number of results to return per page.

Response

Retrieved the list of repositories

Request could not be processed (see detail)

detailstring

An extended message for the response.

Owner namespace not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Views for working with repositories.

Views for working with repositories.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//repos/owner/slug/
curl --request GET \
  --url https://api.cloudsmith.io//repos/owner/slug/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//repos/owner/slug/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//repos/owner/slug/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//repos/owner/slug/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//repos/owner/slug/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
slug
string
required

Response

OK

cdn_urlstring
created_atstring
deleted_atstring
descriptionstring
gpg_keysarray
index_filesboolean

If checked, files contained in packages will be indexed, which increase the synchronisation time required for packages. Note that it is recommended you keep this enabled unless the synchronisation time is significantly impacted.

is_open_sourceboolean
is_privateboolean
is_publicboolean
namestring

A descriptive name for the repository.

namespacestring
namespace_urlstring
num_downloadsinteger

The number of downloads for packages in the repository.

package_countinteger

The number of packages in the repository.

package_group_countinteger

The number of groups in the repository.

repository_typeinteger

The repository type changes how it is accessed and billed. Private repositories can only be used on paid plans, but are visible only to you or authorised delegates. Open-Source repositories are always visible to everyone and are restricted by licensing, but are free to use and come with generous bandwidth/storage. You can only select Open-Source at repository creation time.

repository_type_strstring
self_html_urlstring
self_urlstring
sizeinteger

The calculated size of the repository.

size_strstring
slugstring

The slug identifies the repository in URIs.

slug_permstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Endpoint to check basic API connectivity.

Endpoint to check basic API connectivity.

 
gethttps://api.cloudsmith.io//status/check/basic/
curl --request GET \
  --url https://api.cloudsmith.io//status/check/basic/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//status/check/basic/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//status/check/basic/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//status/check/basic/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//status/check/basic/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Status check was successful

detailstring

The message describing the state of the API.

versionstring

The current version for the Cloudsmith service.

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Provide a brief for the current user (if any).

Provide a brief for the current user (if any).

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//user/self/
curl --request GET \
  --url https://api.cloudsmith.io//user/self/
var request = require("request");

var options = { method: 'GET', url: 'https://api.cloudsmith.io//user/self/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//user/self/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//user/self/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//user/self/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Response

Retrieved brief for the current user

authenticatedboolean

If true then you're logged in as a user.

emailstring

Your email address that we use to contact you. This is only visible to you.

namestring

The full name of the user (if any).

profile_urlstring

The URL for the full profile of the user.

self_urlstring
slugstring
slug_permstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Retrieve the API key/token for the authenticated user.

Retrieve the API key/token for the authenticated user.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//user/token/
curl --request POST \
  --url https://api.cloudsmith.io//user/token/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//user/token/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//user/token/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//user/token/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//user/token/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

email
string

Email address to authenticate with

password
string

Password to authenticate with

Response

Retrieved/created user API token/key

tokenstring

API token for the authenticated user

Request could not be processed (see detail)

detailstring

An extended message for the response.

Locked out

detailstring

An extended message for the response.

Failed to authenticate

detailstring

An extended message for the response.

Suggest Edits

Provide a brief for the specified user (if any).

Provide a brief for the specified user (if any).

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//users/profile/slug/
curl --request GET \
  --url https://api.cloudsmith.io//users/profile/slug/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//users/profile/slug/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//users/profile/slug/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//users/profile/slug/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//users/profile/slug/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

slug
string
required

Response

Retrieved details for the specified user (or current user, if none was specified)

companystring
first_namestring
job_titlestring
joined_atstring
last_namestring
namestring
slugstring
slug_permstring
taglinestring

Your tagline is a sentence about you. Make it funny. Make it professional. Either way, it's public and it represents who you are.

urlstring

Request could not be processed (see detail)

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

 
Suggest Edits

Get a list of all webhooks in a repository.

Get a list of all webhooks in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
gethttps://api.cloudsmith.io//webhooks/owner/repo/
curl --request GET \
  --url https://api.cloudsmith.io//webhooks/owner/repo/
var request = require("request");

var options = { method: 'GET',
  url: 'https://api.cloudsmith.io//webhooks/owner/repo/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//webhooks/owner/repo/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.cloudsmith.io//webhooks/owner/repo/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//webhooks/owner/repo/"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Query Params

page
integer

A page number within the paginated result set.

page_size
integer

Number of results to return per page.

Response

Retrieved the list of webhooks

Request could not be processed (see detail)

detailstring

An extended message for the response.

Owner namespace or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.

Suggest Edits

Create a specific webhook in a repository.

Create a specific webhook in a repository.

 

Header Auth

Basic Auth

 Authentication is required for this endpoint.
posthttps://api.cloudsmith.io//webhooks/owner/repo/
curl --request POST \
  --url https://api.cloudsmith.io//webhooks/owner/repo/
var request = require("request");

var options = { method: 'POST',
  url: 'https://api.cloudsmith.io//webhooks/owner/repo/' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.cloudsmith.io//webhooks/owner/repo/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.cloudsmith.io//webhooks/owner/repo/");

xhr.send(data);
import requests

url = "https://api.cloudsmith.io//webhooks/owner/repo/"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

owner
string
required
repo
string
required

Body Params

events
array of integers
required

None

is_active
boolean

If enabled, the webhook will trigger on events and send payloads to the configured target URL.

request_body_format
integer

The format of the payloads for webhook requests.

request_body_template_format
integer

The format of the payloads for webhook requests.

request_content_type
string

The value that will be sent for the 'Content Type' header.

secret_header
string

The header to send the predefined secret in. This must be unique from existing headers or it won't be sent. You can use this as a form of authentication on the endpoint side.

secret_value
string

The value for the predefined secret (note: this is treated as a passphrase and is encrypted when we store it). You can use this as a form of authentication on the endpoint side.

signature_key
string

The value for the signature key - This is used to generate an HMAC-based hex digest of the request body, which we send as the X-Cloudsmith-Signature header so that you can ensure that the request wasn't modified by a malicious party (note: this is treated as a passphrase and is encrypted when we store it).

target_url
string
required

The destination URL that webhook payloads will be POST'ed to.

templates
array of objects
required

None

event
template
verify_ssl
boolean

If enabled, SSL certificates is verified when webhooks are sent. It's recommended to leave this enabled as not verifying the integrity of SSL certificates leaves you susceptible to Man-in-the-Middle (MITM) attacks.

Response

Created the specified webhook

created_atstring
created_bystring
created_by_urlstring
disable_reasoninteger
disable_reason_strstring
eventsarray
identifierinteger
is_activeboolean

If enabled, the webhook will trigger on events and send payloads to the configured target URL.

is_last_response_badboolean
last_response_statusinteger
last_response_status_strstring
num_sentinteger
request_body_formatinteger

The format of the payloads for webhook requests.

request_body_format_strstring
request_body_template_formatinteger

The format of the payloads for webhook requests.

request_body_template_format_strstring
request_content_typestring

The value that will be sent for the 'Content Type' header.

secret_headerstring

The header to send the predefined secret in. This must be unique from existing headers or it won't be sent. You can use this as a form of authentication on the endpoint side.

self_urlstring
slug_permstring
target_urlstring

The destination URL that webhook payloads will be POST'ed to.

templatesarray
updated_atstring
updated_bystring
updated_by_urlstring
verify_sslboolean

If enabled, SSL certificates is verified when webhooks are sent. It's recommended to leave this enabled as not verifying the integrity of SSL certificates leaves you susceptible to Man-in-the-Middle (MITM) attacks.

Request could not be processed (see detail)

detailstring

An extended message for the response.

Owner namespace or repository not found

detailstring

An extended message for the response.

Missing or invalid parameters (see detail)

detailstring

An extended message for the response.