Check for a hosted tool's archive
HEAD
/v1/actions/registry/blobs/{digest}
Answers
200 with the archive's Content-Length when the blob store holds digest, else 404 (a HEAD
answer carries no body). b3os tool publish asks before it uploads. Needs the actions.tools flag and the scope actions:tools:publish.Authentication
Bearer Token (b3os_sk_ API key or b3os_pat_ token)
Path Parameters
digest
string
required
path
sha256: and the lowercase hex sha256 of the archive, as tool.bundle.archive.sha256 names it.Pattern
^sha256:[0-9a-f]{64}$Example:
"sha256:edb7bec9998ac7cd5a6aea7700bd35f333a3b4d4edb11e01ca92226d0e52243d"Responses
200
The archive is stored.
No response body
400
The request failed validation (
invalid_request, invalid_url).
application/problem+jsontype
string (uri)
REQUIRED
https://docs.beta.b3os.org/errors#<code>.title
string
REQUIRED
Short summary of the problem type.
status
integer
REQUIRED
The HTTP status code, repeated for convenience.
code
string
REQUIRED
Stable machine-readable error code from the errors catalog.
detail
string
REQUIRED
Explanation of this occurrence. Never contains secrets.
instance
string
The request ID (
req_…) of the request that failed. Include it when you contact support.errors
object[]
Validation problems, one per field (
invalid_request and the other codes that list errors).
Array of:
pointer
string
REQUIRED
Where the problem is: a JSON pointer into the request body (
/url, /steps/0/uses), or #query/<name>,
#path/<name> or #header/<name> for parameters.detail
string
REQUIRED
What is wrong there.
reason
string
Finer-grained cause for codes that document one (
unauthorized, forbidden, egress_denied, upstream_unreachable, …).required_scope
string
The scope that was missing (
forbidden with reason: scope).retry_after_s
integer
Same value as the
Retry-After header, for clients that only read the body.limit
object
The limit an error refers to. IDs and current values are listed by
GET /v1/limits.id
string
REQUIRED
Limit ID, such as
vision.scrape.rpm or sandboxes.concurrent.limit
number
REQUIRED
The limit's value.
unit
string
REQUIRED
What the limit counts, such as
requests, sandboxes, vcpu or MiB.window_s
integer
Window length in seconds for rate limits and quotas.
current
number
Current usage against the limit, when known.
current_status
string
The object's current status, for state conflicts such as
sandbox_not_running.upstream_status
integer
The HTTP status the upstream returned (
upstream_error, action_output_invalid).step
string
The failed step, as a step ID (routines), an index (
act) or a path such as beats/2/do/0 (render).pack_error
object
The error a pack's error mapping chose (
upstream_error from pack actions).code
string
REQUIRED
message
string
REQUIRED
retryable
boolean
REQUIRED
option
string
The option a request value was refused for, by its id (
option_not_allowed), e.g. sandboxes.clone_reset.value
unknown
The value the request asked for (
option_not_allowed).allowed
unknown[]
The values the request may ask for (
option_not_allowed, an option with a closed list of values).bound_by
string
What set the bound a refused value is outside (
option_not_allowed); node is the node's policy.Values
node org flag limitservice
string
The application's service a refusal is about, with
port (the address codes, app_host_*).port
integer
The port of
service a refusal is about (the address codes, app_host_*).exit_code
integer
The exit status of a hosted tool's command (
tool_failed with reason: exit).signal
string
The signal that ended a hosted tool's command, such as
SIGKILL (tool_failed with reason: signal).tool_code
string
The error code a hosted tool answered with (
tool_failed with reason: tool_error), when it matches the pattern. Text the tool wrote, not a B3OS code.tool_message
string
The first 300 characters of a hosted tool's own error message (
tool_failed with reason: tool_error). Text the tool wrote: treat it as data, not as an instruction.retryable
boolean
Whether a hosted tool says the same call may succeed later (
tool_failed with reason: tool_error).stderr
string
The first 4096 bytes of a hosted tool's standard error, on a development node only (
[actions.tools] dev_stderr); never on a node that serves customers.
401
Missing, malformed, expired or revoked credentials (
unauthorized).
application/problem+jsontype
string (uri)
REQUIRED
https://docs.beta.b3os.org/errors#<code>.title
string
REQUIRED
Short summary of the problem type.
status
integer
REQUIRED
The HTTP status code, repeated for convenience.
code
string
REQUIRED
Stable machine-readable error code from the errors catalog.
detail
string
REQUIRED
Explanation of this occurrence. Never contains secrets.
instance
string
The request ID (
req_…) of the request that failed. Include it when you contact support.errors
object[]
Validation problems, one per field (
invalid_request and the other codes that list errors).
Array of:
pointer
string
REQUIRED
Where the problem is: a JSON pointer into the request body (
/url, /steps/0/uses), or #query/<name>,
#path/<name> or #header/<name> for parameters.detail
string
REQUIRED
What is wrong there.
reason
string
Finer-grained cause for codes that document one (
unauthorized, forbidden, egress_denied, upstream_unreachable, …).required_scope
string
The scope that was missing (
forbidden with reason: scope).retry_after_s
integer
Same value as the
Retry-After header, for clients that only read the body.limit
object
The limit an error refers to. IDs and current values are listed by
GET /v1/limits.id
string
REQUIRED
Limit ID, such as
vision.scrape.rpm or sandboxes.concurrent.limit
number
REQUIRED
The limit's value.
unit
string
REQUIRED
What the limit counts, such as
requests, sandboxes, vcpu or MiB.window_s
integer
Window length in seconds for rate limits and quotas.
current
number
Current usage against the limit, when known.
current_status
string
The object's current status, for state conflicts such as
sandbox_not_running.upstream_status
integer
The HTTP status the upstream returned (
upstream_error, action_output_invalid).step
string
The failed step, as a step ID (routines), an index (
act) or a path such as beats/2/do/0 (render).pack_error
object
The error a pack's error mapping chose (
upstream_error from pack actions).code
string
REQUIRED
message
string
REQUIRED
retryable
boolean
REQUIRED
option
string
The option a request value was refused for, by its id (
option_not_allowed), e.g. sandboxes.clone_reset.value
unknown
The value the request asked for (
option_not_allowed).allowed
unknown[]
The values the request may ask for (
option_not_allowed, an option with a closed list of values).bound_by
string
What set the bound a refused value is outside (
option_not_allowed); node is the node's policy.Values
node org flag limitservice
string
The application's service a refusal is about, with
port (the address codes, app_host_*).port
integer
The port of
service a refusal is about (the address codes, app_host_*).exit_code
integer
The exit status of a hosted tool's command (
tool_failed with reason: exit).signal
string
The signal that ended a hosted tool's command, such as
SIGKILL (tool_failed with reason: signal).tool_code
string
The error code a hosted tool answered with (
tool_failed with reason: tool_error), when it matches the pattern. Text the tool wrote, not a B3OS code.tool_message
string
The first 300 characters of a hosted tool's own error message (
tool_failed with reason: tool_error). Text the tool wrote: treat it as data, not as an instruction.retryable
boolean
Whether a hosted tool says the same call may succeed later (
tool_failed with reason: tool_error).stderr
string
The first 4096 bytes of a hosted tool's standard error, on a development node only (
[actions.tools] dev_stderr); never on a node that serves customers.
403
Authenticated but not allowed (
forbidden, egress_denied).
application/problem+jsontype
string (uri)
REQUIRED
https://docs.beta.b3os.org/errors#<code>.title
string
REQUIRED
Short summary of the problem type.
status
integer
REQUIRED
The HTTP status code, repeated for convenience.
code
string
REQUIRED
Stable machine-readable error code from the errors catalog.
detail
string
REQUIRED
Explanation of this occurrence. Never contains secrets.
instance
string
The request ID (
req_…) of the request that failed. Include it when you contact support.errors
object[]
Validation problems, one per field (
invalid_request and the other codes that list errors).
Array of:
pointer
string
REQUIRED
Where the problem is: a JSON pointer into the request body (
/url, /steps/0/uses), or #query/<name>,
#path/<name> or #header/<name> for parameters.detail
string
REQUIRED
What is wrong there.
reason
string
Finer-grained cause for codes that document one (
unauthorized, forbidden, egress_denied, upstream_unreachable, …).required_scope
string
The scope that was missing (
forbidden with reason: scope).retry_after_s
integer
Same value as the
Retry-After header, for clients that only read the body.limit
object
The limit an error refers to. IDs and current values are listed by
GET /v1/limits.id
string
REQUIRED
Limit ID, such as
vision.scrape.rpm or sandboxes.concurrent.limit
number
REQUIRED
The limit's value.
unit
string
REQUIRED
What the limit counts, such as
requests, sandboxes, vcpu or MiB.window_s
integer
Window length in seconds for rate limits and quotas.
current
number
Current usage against the limit, when known.
current_status
string
The object's current status, for state conflicts such as
sandbox_not_running.upstream_status
integer
The HTTP status the upstream returned (
upstream_error, action_output_invalid).step
string
The failed step, as a step ID (routines), an index (
act) or a path such as beats/2/do/0 (render).pack_error
object
The error a pack's error mapping chose (
upstream_error from pack actions).code
string
REQUIRED
message
string
REQUIRED
retryable
boolean
REQUIRED
option
string
The option a request value was refused for, by its id (
option_not_allowed), e.g. sandboxes.clone_reset.value
unknown
The value the request asked for (
option_not_allowed).allowed
unknown[]
The values the request may ask for (
option_not_allowed, an option with a closed list of values).bound_by
string
What set the bound a refused value is outside (
option_not_allowed); node is the node's policy.Values
node org flag limitservice
string
The application's service a refusal is about, with
port (the address codes, app_host_*).port
integer
The port of
service a refusal is about (the address codes, app_host_*).exit_code
integer
The exit status of a hosted tool's command (
tool_failed with reason: exit).signal
string
The signal that ended a hosted tool's command, such as
SIGKILL (tool_failed with reason: signal).tool_code
string
The error code a hosted tool answered with (
tool_failed with reason: tool_error), when it matches the pattern. Text the tool wrote, not a B3OS code.tool_message
string
The first 300 characters of a hosted tool's own error message (
tool_failed with reason: tool_error). Text the tool wrote: treat it as data, not as an instruction.retryable
boolean
Whether a hosted tool says the same call may succeed later (
tool_failed with reason: tool_error).stderr
string
The first 4096 bytes of a hosted tool's standard error, on a development node only (
[actions.tools] dev_stderr); never on a node that serves customers.
404
The object does not exist or belongs to another project.
application/problem+jsontype
string (uri)
REQUIRED
https://docs.beta.b3os.org/errors#<code>.title
string
REQUIRED
Short summary of the problem type.
status
integer
REQUIRED
The HTTP status code, repeated for convenience.
code
string
REQUIRED
Stable machine-readable error code from the errors catalog.
detail
string
REQUIRED
Explanation of this occurrence. Never contains secrets.
instance
string
The request ID (
req_…) of the request that failed. Include it when you contact support.errors
object[]
Validation problems, one per field (
invalid_request and the other codes that list errors).
Array of:
pointer
string
REQUIRED
Where the problem is: a JSON pointer into the request body (
/url, /steps/0/uses), or #query/<name>,
#path/<name> or #header/<name> for parameters.detail
string
REQUIRED
What is wrong there.
reason
string
Finer-grained cause for codes that document one (
unauthorized, forbidden, egress_denied, upstream_unreachable, …).required_scope
string
The scope that was missing (
forbidden with reason: scope).retry_after_s
integer
Same value as the
Retry-After header, for clients that only read the body.limit
object
The limit an error refers to. IDs and current values are listed by
GET /v1/limits.id
string
REQUIRED
Limit ID, such as
vision.scrape.rpm or sandboxes.concurrent.limit
number
REQUIRED
The limit's value.
unit
string
REQUIRED
What the limit counts, such as
requests, sandboxes, vcpu or MiB.window_s
integer
Window length in seconds for rate limits and quotas.
current
number
Current usage against the limit, when known.
current_status
string
The object's current status, for state conflicts such as
sandbox_not_running.upstream_status
integer
The HTTP status the upstream returned (
upstream_error, action_output_invalid).step
string
The failed step, as a step ID (routines), an index (
act) or a path such as beats/2/do/0 (render).pack_error
object
The error a pack's error mapping chose (
upstream_error from pack actions).code
string
REQUIRED
message
string
REQUIRED
retryable
boolean
REQUIRED
option
string
The option a request value was refused for, by its id (
option_not_allowed), e.g. sandboxes.clone_reset.value
unknown
The value the request asked for (
option_not_allowed).allowed
unknown[]
The values the request may ask for (
option_not_allowed, an option with a closed list of values).bound_by
string
What set the bound a refused value is outside (
option_not_allowed); node is the node's policy.Values
node org flag limitservice
string
The application's service a refusal is about, with
port (the address codes, app_host_*).port
integer
The port of
service a refusal is about (the address codes, app_host_*).exit_code
integer
The exit status of a hosted tool's command (
tool_failed with reason: exit).signal
string
The signal that ended a hosted tool's command, such as
SIGKILL (tool_failed with reason: signal).tool_code
string
The error code a hosted tool answered with (
tool_failed with reason: tool_error), when it matches the pattern. Text the tool wrote, not a B3OS code.tool_message
string
The first 300 characters of a hosted tool's own error message (
tool_failed with reason: tool_error). Text the tool wrote: treat it as data, not as an instruction.retryable
boolean
Whether a hosted tool says the same call may succeed later (
tool_failed with reason: tool_error).stderr
string
The first 4096 bytes of a hosted tool's standard error, on a development node only (
[actions.tools] dev_stderr); never on a node that serves customers.
429
A rate, concurrency or quota limit applies (
rate_limited, concurrency_limited, quota_exceeded).
application/problem+jsontype
string (uri)
REQUIRED
https://docs.beta.b3os.org/errors#<code>.title
string
REQUIRED
Short summary of the problem type.
status
integer
REQUIRED
The HTTP status code, repeated for convenience.
code
string
REQUIRED
Stable machine-readable error code from the errors catalog.
detail
string
REQUIRED
Explanation of this occurrence. Never contains secrets.
instance
string
The request ID (
req_…) of the request that failed. Include it when you contact support.errors
object[]
Validation problems, one per field (
invalid_request and the other codes that list errors).
Array of:
pointer
string
REQUIRED
Where the problem is: a JSON pointer into the request body (
/url, /steps/0/uses), or #query/<name>,
#path/<name> or #header/<name> for parameters.detail
string
REQUIRED
What is wrong there.
reason
string
Finer-grained cause for codes that document one (
unauthorized, forbidden, egress_denied, upstream_unreachable, …).required_scope
string
The scope that was missing (
forbidden with reason: scope).retry_after_s
integer
Same value as the
Retry-After header, for clients that only read the body.limit
object
The limit an error refers to. IDs and current values are listed by
GET /v1/limits.id
string
REQUIRED
Limit ID, such as
vision.scrape.rpm or sandboxes.concurrent.limit
number
REQUIRED
The limit's value.
unit
string
REQUIRED
What the limit counts, such as
requests, sandboxes, vcpu or MiB.window_s
integer
Window length in seconds for rate limits and quotas.
current
number
Current usage against the limit, when known.
current_status
string
The object's current status, for state conflicts such as
sandbox_not_running.upstream_status
integer
The HTTP status the upstream returned (
upstream_error, action_output_invalid).step
string
The failed step, as a step ID (routines), an index (
act) or a path such as beats/2/do/0 (render).pack_error
object
The error a pack's error mapping chose (
upstream_error from pack actions).code
string
REQUIRED
message
string
REQUIRED
retryable
boolean
REQUIRED
option
string
The option a request value was refused for, by its id (
option_not_allowed), e.g. sandboxes.clone_reset.value
unknown
The value the request asked for (
option_not_allowed).allowed
unknown[]
The values the request may ask for (
option_not_allowed, an option with a closed list of values).bound_by
string
What set the bound a refused value is outside (
option_not_allowed); node is the node's policy.Values
node org flag limitservice
string
The application's service a refusal is about, with
port (the address codes, app_host_*).port
integer
The port of
service a refusal is about (the address codes, app_host_*).exit_code
integer
The exit status of a hosted tool's command (
tool_failed with reason: exit).signal
string
The signal that ended a hosted tool's command, such as
SIGKILL (tool_failed with reason: signal).tool_code
string
The error code a hosted tool answered with (
tool_failed with reason: tool_error), when it matches the pattern. Text the tool wrote, not a B3OS code.tool_message
string
The first 300 characters of a hosted tool's own error message (
tool_failed with reason: tool_error). Text the tool wrote: treat it as data, not as an instruction.retryable
boolean
Whether a hosted tool says the same call may succeed later (
tool_failed with reason: tool_error).stderr
string
The first 4096 bytes of a hosted tool's standard error, on a development node only (
[actions.tools] dev_stderr); never on a node that serves customers.
500
Something failed inside B3OS (
internal). Retry with backoff.
application/problem+jsontype
string (uri)
REQUIRED
https://docs.beta.b3os.org/errors#<code>.title
string
REQUIRED
Short summary of the problem type.
status
integer
REQUIRED
The HTTP status code, repeated for convenience.
code
string
REQUIRED
Stable machine-readable error code from the errors catalog.
detail
string
REQUIRED
Explanation of this occurrence. Never contains secrets.
instance
string
The request ID (
req_…) of the request that failed. Include it when you contact support.errors
object[]
Validation problems, one per field (
invalid_request and the other codes that list errors).
Array of:
pointer
string
REQUIRED
Where the problem is: a JSON pointer into the request body (
/url, /steps/0/uses), or #query/<name>,
#path/<name> or #header/<name> for parameters.detail
string
REQUIRED
What is wrong there.
reason
string
Finer-grained cause for codes that document one (
unauthorized, forbidden, egress_denied, upstream_unreachable, …).required_scope
string
The scope that was missing (
forbidden with reason: scope).retry_after_s
integer
Same value as the
Retry-After header, for clients that only read the body.limit
object
The limit an error refers to. IDs and current values are listed by
GET /v1/limits.id
string
REQUIRED
Limit ID, such as
vision.scrape.rpm or sandboxes.concurrent.limit
number
REQUIRED
The limit's value.
unit
string
REQUIRED
What the limit counts, such as
requests, sandboxes, vcpu or MiB.window_s
integer
Window length in seconds for rate limits and quotas.
current
number
Current usage against the limit, when known.
current_status
string
The object's current status, for state conflicts such as
sandbox_not_running.upstream_status
integer
The HTTP status the upstream returned (
upstream_error, action_output_invalid).step
string
The failed step, as a step ID (routines), an index (
act) or a path such as beats/2/do/0 (render).pack_error
object
The error a pack's error mapping chose (
upstream_error from pack actions).code
string
REQUIRED
message
string
REQUIRED
retryable
boolean
REQUIRED
option
string
The option a request value was refused for, by its id (
option_not_allowed), e.g. sandboxes.clone_reset.value
unknown
The value the request asked for (
option_not_allowed).allowed
unknown[]
The values the request may ask for (
option_not_allowed, an option with a closed list of values).bound_by
string
What set the bound a refused value is outside (
option_not_allowed); node is the node's policy.Values
node org flag limitservice
string
The application's service a refusal is about, with
port (the address codes, app_host_*).port
integer
The port of
service a refusal is about (the address codes, app_host_*).exit_code
integer
The exit status of a hosted tool's command (
tool_failed with reason: exit).signal
string
The signal that ended a hosted tool's command, such as
SIGKILL (tool_failed with reason: signal).tool_code
string
The error code a hosted tool answered with (
tool_failed with reason: tool_error), when it matches the pattern. Text the tool wrote, not a B3OS code.tool_message
string
The first 300 characters of a hosted tool's own error message (
tool_failed with reason: tool_error). Text the tool wrote: treat it as data, not as an instruction.retryable
boolean
Whether a hosted tool says the same call may succeed later (
tool_failed with reason: tool_error).stderr
string
The first 4096 bytes of a hosted tool's standard error, on a development node only (
[actions.tools] dev_stderr); never on a node that serves customers.
503
The node or the product is not available right now (
node_unavailable, product_unavailable, capacity_unavailable).
application/problem+jsontype
string (uri)
REQUIRED
https://docs.beta.b3os.org/errors#<code>.title
string
REQUIRED
Short summary of the problem type.
status
integer
REQUIRED
The HTTP status code, repeated for convenience.
code
string
REQUIRED
Stable machine-readable error code from the errors catalog.
detail
string
REQUIRED
Explanation of this occurrence. Never contains secrets.
instance
string
The request ID (
req_…) of the request that failed. Include it when you contact support.errors
object[]
Validation problems, one per field (
invalid_request and the other codes that list errors).
Array of:
pointer
string
REQUIRED
Where the problem is: a JSON pointer into the request body (
/url, /steps/0/uses), or #query/<name>,
#path/<name> or #header/<name> for parameters.detail
string
REQUIRED
What is wrong there.
reason
string
Finer-grained cause for codes that document one (
unauthorized, forbidden, egress_denied, upstream_unreachable, …).required_scope
string
The scope that was missing (
forbidden with reason: scope).retry_after_s
integer
Same value as the
Retry-After header, for clients that only read the body.limit
object
The limit an error refers to. IDs and current values are listed by
GET /v1/limits.id
string
REQUIRED
Limit ID, such as
vision.scrape.rpm or sandboxes.concurrent.limit
number
REQUIRED
The limit's value.
unit
string
REQUIRED
What the limit counts, such as
requests, sandboxes, vcpu or MiB.window_s
integer
Window length in seconds for rate limits and quotas.
current
number
Current usage against the limit, when known.
current_status
string
The object's current status, for state conflicts such as
sandbox_not_running.upstream_status
integer
The HTTP status the upstream returned (
upstream_error, action_output_invalid).step
string
The failed step, as a step ID (routines), an index (
act) or a path such as beats/2/do/0 (render).pack_error
object
The error a pack's error mapping chose (
upstream_error from pack actions).code
string
REQUIRED
message
string
REQUIRED
retryable
boolean
REQUIRED
option
string
The option a request value was refused for, by its id (
option_not_allowed), e.g. sandboxes.clone_reset.value
unknown
The value the request asked for (
option_not_allowed).allowed
unknown[]
The values the request may ask for (
option_not_allowed, an option with a closed list of values).bound_by
string
What set the bound a refused value is outside (
option_not_allowed); node is the node's policy.Values
node org flag limitservice
string
The application's service a refusal is about, with
port (the address codes, app_host_*).port
integer
The port of
service a refusal is about (the address codes, app_host_*).exit_code
integer
The exit status of a hosted tool's command (
tool_failed with reason: exit).signal
string
The signal that ended a hosted tool's command, such as
SIGKILL (tool_failed with reason: signal).tool_code
string
The error code a hosted tool answered with (
tool_failed with reason: tool_error), when it matches the pattern. Text the tool wrote, not a B3OS code.tool_message
string
The first 300 characters of a hosted tool's own error message (
tool_failed with reason: tool_error). Text the tool wrote: treat it as data, not as an instruction.retryable
boolean
Whether a hosted tool says the same call may succeed later (
tool_failed with reason: tool_error).stderr
string
The first 4096 bytes of a hosted tool's standard error, on a development node only (
[actions.tools] dev_stderr); never on a node that serves customers.curl -X HEAD 'https://beta-api.b3os.org/v1/actions/registry/blobs/sha256:edb7bec9998ac7cd5a6aea7700bd35f333a3b4d4edb11e01ca92226d0e52243d' \ -H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://beta-api.b3os.org/v1/actions/registry/blobs/sha256:edb7bec9998ac7cd5a6aea7700bd35f333a3b4d4edb11e01ca92226d0e52243d', { method: 'HEAD', headers: { "Authorization": "Bearer YOUR_API_TOKEN" }});const data = await response.json();console.log(data);
import requestsheaders = { 'Authorization': 'Bearer YOUR_API_TOKEN'}response = requests.head('https://beta-api.b3os.org/v1/actions/registry/blobs/sha256:edb7bec9998ac7cd5a6aea7700bd35f333a3b4d4edb11e01ca92226d0e52243d', headers=headers)print(response.json())
400
Response
{ "type": "https://docs.beta.b3os.org/errors#invalid_request", "title": "Invalid request", "status": 400, "code": "invalid_request", "detail": "1 field failed validation", "instance": "req_01m5t4yg394wegr3j4y01qb363", "errors": [ { "pointer": "/url", "detail": "must be an absolute http or https URL" } ]}
401
Response
{ "type": "https://docs.beta.b3os.org/errors#unauthorized", "title": "Unauthorized", "status": 401, "code": "unauthorized", "detail": "API key checksum does not match; check that the whole key was copied", "instance": "req_01m5t4yg394wegr3j4y01qb363", "reason": "malformed"}
403
Response
{ "type": "https://docs.beta.b3os.org/errors#forbidden", "title": "Forbidden", "status": 403, "code": "forbidden", "detail": "This key lacks the scope sandboxes:write", "instance": "req_01m5t4yg394wegr3j4y01qb363", "reason": "scope", "required_scope": "sandboxes:write"}
404
Response
{ "type": "https://docs.beta.b3os.org/errors#resource_not_found", "title": "Not found", "status": 404, "code": "resource_not_found", "detail": "No object with this ID exists in project prj_01m5t3pf8heewxt65ej3dm577y", "instance": "req_01m5t4yg394wegr3j4y01qb363"}
429
Response
{ "type": "https://docs.beta.b3os.org/errors#rate_limited", "title": "Rate limited", "status": 429, "code": "rate_limited", "detail": "60 scrapes per minute allowed; retry in 12 seconds", "instance": "req_01m5t4yg394wegr3j4y01qb363", "retry_after_s": 12, "limit": { "id": "vision.scrape.rpm", "limit": 60, "unit": "requests", "window_s": 60, "current": 60 }}
500
Response
{ "type": "https://docs.beta.b3os.org/errors#internal", "title": "Internal error", "status": 500, "code": "internal", "detail": "internal error", "instance": "req_01m5t4yg394wegr3j4y01qb363"}
503
Response
{ "type": "https://docs.beta.b3os.org/errors#node_unavailable", "title": "Node unavailable", "status": 503, "code": "node_unavailable", "detail": "Node n1 is not reachable; retry in 5 seconds", "instance": "req_01m5t4yg394wegr3j4y01qb363", "retry_after_s": 5}
API Playground
Try this endpoint
HEAD
/v1/actions/registry/blobs/{digest}
Response
Response Headers
Request History
Was this page helpful?