Each studio has one or more brands with ShootProof. It all depends on how they choose to organize their businesses. Some studios have a single brand, under which all their business takes place. Others like to separate the types of business they engage in under separate brands (i.e. portraits, weddings, etc.). They may use these brands to communicate with and sell to different customers.
No matter how a studio chooses to use ShootProof—whether through one brand or many—your app will manage most of a studio’s data through brands. Contacts, contracts, events, invoices, orders, and more are all handled through a brand.
/studio/brand
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
page |
The page of results to return. |
rows |
The number of rows to return on each page of results. |
sortBy |
The property by which items returned should be sorted. |
sortType |
The direction in which sorting should occur. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
200 OK
Brand list response.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
items |
A collection of resources returned in the current result set.
|
||||||||||||||||||||||||||||||||||||||||||||||||||
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
||||||||||||||||||||||||||||||||||||||||||||||||||
meta read-only |
Metadata describing the current result set.
|
||||||||||||||||||||||||||||||||||||||||||||||||||
type |
The type of resource represented. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/BrandCollection"
}
}
},
"description": "Brand list response."
}
}
/studio/brand/{brandId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
200 OK
A brand.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
address required nullable |
The mailing address for this brand. |
automationSendHour |
The hour during which email automations for this brand will be sent, relative to the brand's time zone. |
created |
The creation date of this brand. |
customDomain nullable |
A custom domain for this brand, if applicable. |
The email address for this brand. |
|
facebookFanPageUrl nullable |
The URL for this brand's Facebook fan page. |
galleryDomain |
The domain for this brand's galleries. |
homepageBrandTheme |
A brand theme. |
homepageBrandThemeId |
The identifier for this brand's homepage brand theme. |
id |
The identifier for this brand. |
instagramUsername nullable |
The Instagram username for this brand. |
isDefault |
Whether this is the default brand for the logged-in user's studio. |
labCatalogs |
An array of lab catalogs to which this brand has access. |
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
locale |
The locale defined for this brand. |
name |
The name of this brand. |
phone |
The phone number for this brand. |
subdomain |
The ShootProof subdomain for this brand. |
taxIdentifier nullable |
The tax ID defined for this brand. |
taxMethod nullable |
The tax method for this brand. |
twitterHandle nullable |
The Twitter username for this brand. |
type |
The type of resource represented. |
useDefaultWatermark |
Whether or not the Brand's default watermark should be applied at upload time. |
website nullable |
The URL for this brand's website. |
API errors come in two kinds of varieties: 400
s and 500
s.
Any error with a status code of 400
to 499
is considered a client error. This means it’s usually an error you can handle in your app, and then resend a modified request to the ShootProof API to get a successful response.
An error in the range of 500
to 599
, on the other hand, is a different story. These errors usually mean that a problem occured on the server and resending the request with modifications will not fix the issue.
Pay careful attention to the status codes. We try to stick as close as possible to their defined semantics. For a complete list of HTTP status codes, take a look at the official HTTP Status Code Registry.
Check out our errors guide for more information.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||
title |
A short description of the error encountered. |
||||||||||||
type |
A namespace URI uniquely identifying the error type. |
{
"detail": "There was a problem with your request. Please see `info` for more information.",
"info": {
"errors": {
"type": {
"isEmpty": "Value is required and can't be empty"
}
}
},
"status": 400,
"title": "Bad Request",
"type": "https://developer.shootproof.com/errors#error-bad-request"
}
{
"detail": "You do not have permission to access the requested resource.",
"status": 403,
"title": "Forbidden",
"type": "https://developer.shootproof.com/errors#error-forbidden"
}
{
"detail": "The requested resource could not be found.",
"status": 404,
"title": "Not Found",
"type": "https://developer.shootproof.com/errors#error-not-found"
}
{
"detail": "An error occurred on the server. If this error continues to occur, please contact support.",
"status": 500,
"title": "Internal Server Error",
"type": "https://developer.shootproof.com/errors#error-server-error"
}
{
"detail": "No authorization credentials provided. You must provide an authorization token for this request.",
"status": 401,
"title": "Unauthorized",
"type": "https://developer.shootproof.com/errors#error-unauthorized"
}
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/Brand"
}
}
},
"description": "A brand."
},
"default": {
"$ref": "#/components/responses/defaultError"
}
}
/studio/brand/{brandId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
The brand to update. Only provide those properties that need updating.
Property | Description |
---|---|
automationSendHour |
The hour during which email automations for this brand will be sent, relative to the brand's time zone. |
taxIdentifier nullable |
The tax ID defined for this brand. |
taxMethod |
The tax method for this brand. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"content": {
"application/vnd.shootproof+json": {
"schema": {
"properties": {
"automationSendHour": {
"description": "The hour during which email automations for this brand will be sent, relative to the brand's time zone.",
"maximum": 23,
"minimum": 0,
"type": "integer"
},
"taxIdentifier": {
"description": "The tax ID defined for this brand.",
"nullable": true,
"type": "string"
},
"taxMethod": {
"description": "The tax method for this brand.",
"enum": [
"exclusive",
"inclusive"
],
"type": "string"
}
},
"title": "Brand",
"type": "object"
}
}
},
"description": "The brand to update. Only provide those properties that need updating.",
"required": true
}
200 OK
The updated brand.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
address required nullable |
The mailing address for this brand. |
automationSendHour |
The hour during which email automations for this brand will be sent, relative to the brand's time zone. |
created |
The creation date of this brand. |
customDomain nullable |
A custom domain for this brand, if applicable. |
The email address for this brand. |
|
facebookFanPageUrl nullable |
The URL for this brand's Facebook fan page. |
galleryDomain |
The domain for this brand's galleries. |
homepageBrandTheme |
A brand theme. |
homepageBrandThemeId |
The identifier for this brand's homepage brand theme. |
id |
The identifier for this brand. |
instagramUsername nullable |
The Instagram username for this brand. |
isDefault |
Whether this is the default brand for the logged-in user's studio. |
labCatalogs |
An array of lab catalogs to which this brand has access. |
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
locale |
The locale defined for this brand. |
name |
The name of this brand. |
phone |
The phone number for this brand. |
subdomain |
The ShootProof subdomain for this brand. |
taxIdentifier nullable |
The tax ID defined for this brand. |
taxMethod nullable |
The tax method for this brand. |
twitterHandle nullable |
The Twitter username for this brand. |
type |
The type of resource represented. |
useDefaultWatermark |
Whether or not the Brand's default watermark should be applied at upload time. |
website nullable |
The URL for this brand's website. |
400 Bad Request
Validation error response. Check the info.errors
property in the response for more details.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||||
title |
A short description of the error encountered. |
||||||||||||||
type |
A namespace URI uniquely identifying the error type. |
API errors come in two kinds of varieties: 400
s and 500
s.
Any error with a status code of 400
to 499
is considered a client error. This means it’s usually an error you can handle in your app, and then resend a modified request to the ShootProof API to get a successful response.
An error in the range of 500
to 599
, on the other hand, is a different story. These errors usually mean that a problem occured on the server and resending the request with modifications will not fix the issue.
Pay careful attention to the status codes. We try to stick as close as possible to their defined semantics. For a complete list of HTTP status codes, take a look at the official HTTP Status Code Registry.
Check out our errors guide for more information.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||
title |
A short description of the error encountered. |
||||||||||||
type |
A namespace URI uniquely identifying the error type. |
{
"detail": "There was a problem with your request. Please see `info` for more information.",
"info": {
"errors": {
"type": {
"isEmpty": "Value is required and can't be empty"
}
}
},
"status": 400,
"title": "Bad Request",
"type": "https://developer.shootproof.com/errors#error-bad-request"
}
{
"detail": "You do not have permission to access the requested resource.",
"status": 403,
"title": "Forbidden",
"type": "https://developer.shootproof.com/errors#error-forbidden"
}
{
"detail": "The requested resource could not be found.",
"status": 404,
"title": "Not Found",
"type": "https://developer.shootproof.com/errors#error-not-found"
}
{
"detail": "An error occurred on the server. If this error continues to occur, please contact support.",
"status": 500,
"title": "Internal Server Error",
"type": "https://developer.shootproof.com/errors#error-server-error"
}
{
"detail": "No authorization credentials provided. You must provide an authorization token for this request.",
"status": 401,
"title": "Unauthorized",
"type": "https://developer.shootproof.com/errors#error-unauthorized"
}
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/Brand"
}
}
},
"description": "The updated brand."
},
"400": {
"$ref": "#/components/responses/validationError"
},
"default": {
"$ref": "#/components/responses/defaultError"
}
}
/studio/brand/{brandId}/brand-theme
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
Property | Description |
---|---|
page |
The page of results to return. |
rows |
The number of rows to return on each page of results. |
sortBy |
The property by which items returned should be sorted. |
sortType |
The direction in which sorting should occur. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
200 OK
Brand themes list response.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
items |
A collection of resources returned in the current result set.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
meta read-only |
Metadata describing the current result set.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
type |
The type of resource represented. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/BrandThemeCollection"
}
}
},
"description": "Brand themes list response."
}
}
/studio/brand/{brandId}/brand-theme/{brandThemeId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
brandThemeId required |
The brand theme identifier. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
200 OK
A brand theme.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
colorScheme |
The color scheme for this brand theme.
|
||||||||||||||||||||||||||||
created read-only |
The date on which the entity was created. |
||||||||||||||||||||||||||||
emailBrandLogo nullable |
The brand logo for use in email messages (and any other place using a white/neutral background such as contracts and invoices). |
||||||||||||||||||||||||||||
eventBrandLogo nullable |
The brand logo for use in event presentation. |
||||||||||||||||||||||||||||
fontSet |
The font set for this brand theme.
|
||||||||||||||||||||||||||||
id |
The identifier of this brand theme. |
||||||||||||||||||||||||||||
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
||||||||||||||||||||||||||||
name |
The name of this brand theme. |
||||||||||||||||||||||||||||
primaryColor |
The primary hex color code for this brand theme. |
||||||||||||||||||||||||||||
secondaryColor |
The secondary hex color code for this brand theme. |
||||||||||||||||||||||||||||
type |
The type of object represented. |
API errors come in two kinds of varieties: 400
s and 500
s.
Any error with a status code of 400
to 499
is considered a client error. This means it’s usually an error you can handle in your app, and then resend a modified request to the ShootProof API to get a successful response.
An error in the range of 500
to 599
, on the other hand, is a different story. These errors usually mean that a problem occured on the server and resending the request with modifications will not fix the issue.
Pay careful attention to the status codes. We try to stick as close as possible to their defined semantics. For a complete list of HTTP status codes, take a look at the official HTTP Status Code Registry.
Check out our errors guide for more information.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||
title |
A short description of the error encountered. |
||||||||||||
type |
A namespace URI uniquely identifying the error type. |
{
"detail": "There was a problem with your request. Please see `info` for more information.",
"info": {
"errors": {
"type": {
"isEmpty": "Value is required and can't be empty"
}
}
},
"status": 400,
"title": "Bad Request",
"type": "https://developer.shootproof.com/errors#error-bad-request"
}
{
"detail": "You do not have permission to access the requested resource.",
"status": 403,
"title": "Forbidden",
"type": "https://developer.shootproof.com/errors#error-forbidden"
}
{
"detail": "The requested resource could not be found.",
"status": 404,
"title": "Not Found",
"type": "https://developer.shootproof.com/errors#error-not-found"
}
{
"detail": "An error occurred on the server. If this error continues to occur, please contact support.",
"status": 500,
"title": "Internal Server Error",
"type": "https://developer.shootproof.com/errors#error-server-error"
}
{
"detail": "No authorization credentials provided. You must provide an authorization token for this request.",
"status": 401,
"title": "Unauthorized",
"type": "https://developer.shootproof.com/errors#error-unauthorized"
}
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/BrandTheme"
}
}
},
"description": "A brand theme."
},
"default": {
"$ref": "#/components/responses/defaultError"
}
}
/studio/brand/{brandId}/brand-theme/{brandThemeId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
brandThemeId required |
The brand theme identifier. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
The attachment parts of the multipart/mixed
request MUST be named event-brand-logo
and email-brand-logo
. Other attachment names will not be accepted.
Property | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
colorScheme |
The color scheme for this brand theme.
|
||||||||||||||||||||||||||||
emailBrandLogo nullable |
The brand logo for use in email messages (and any other place using a white/neutral background such as contracts and invoices). |
||||||||||||||||||||||||||||
eventBrandLogo nullable |
The brand logo for use in event presentation. |
||||||||||||||||||||||||||||
fontSet |
The font set for this brand theme.
|
||||||||||||||||||||||||||||
id |
The identifier of this brand theme. |
||||||||||||||||||||||||||||
name |
The name of this brand theme. |
||||||||||||||||||||||||||||
primaryColor |
The primary hex color code for this brand theme. |
||||||||||||||||||||||||||||
secondaryColor |
The secondary hex color code for this brand theme. |
||||||||||||||||||||||||||||
type |
The type of object represented. |
Property | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
colorScheme |
The color scheme for this brand theme.
|
||||||||||||||||||||||||||||
emailBrandLogo nullable |
The brand logo for use in email messages (and any other place using a white/neutral background such as contracts and invoices). |
||||||||||||||||||||||||||||
eventBrandLogo nullable |
The brand logo for use in event presentation. |
||||||||||||||||||||||||||||
fontSet |
The font set for this brand theme.
|
||||||||||||||||||||||||||||
id |
The identifier of this brand theme. |
||||||||||||||||||||||||||||
name |
The name of this brand theme. |
||||||||||||||||||||||||||||
primaryColor |
The primary hex color code for this brand theme. |
||||||||||||||||||||||||||||
secondaryColor |
The secondary hex color code for this brand theme. |
||||||||||||||||||||||||||||
type |
The type of object represented. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/BrandTheme"
}
},
"multipart/mixed": {
"example": "--SP_BOUNDARY\nContent-Type: application/vnd.shootproof+json\n\n{\n \"id\": 12345,\n \"type\": \"brand-theme\",\n \"name\": \"Test\",\n \"primaryColor\": \"4fc12a\",\n \"secondaryColor\": \"8a3b52\",\n \"colorScheme\": \"light\",\n \"fontSet\": \"brandon\"\n}\n\n--SP_BOUNDARY\nContent-Disposition: attachment; name=event-brand-logo; filename=image.jpg\nContent-Type: image/jpeg\n\n[binary data]\n\n--SP_BOUNDARY\nContent-Disposition: attachment; name=email-brand-logo; filename=image2.jpg\nContent-Type: image/jpeg\n\n[binary data]\n\n--SP_BOUNDARY--",
"schema": {
"$ref": "#/components/schemas/BrandTheme"
}
}
},
"description": "The attachment parts of the `multipart/mixed` request MUST be named\n`event-brand-logo` and `email-brand-logo`. Other attachment names\nwill not be accepted."
}
200 OK
The updated brand theme.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
colorScheme |
The color scheme for this brand theme.
|
||||||||||||||||||||||||||||
created read-only |
The date on which the entity was created. |
||||||||||||||||||||||||||||
emailBrandLogo nullable |
The brand logo for use in email messages (and any other place using a white/neutral background such as contracts and invoices). |
||||||||||||||||||||||||||||
eventBrandLogo nullable |
The brand logo for use in event presentation. |
||||||||||||||||||||||||||||
fontSet |
The font set for this brand theme.
|
||||||||||||||||||||||||||||
id |
The identifier of this brand theme. |
||||||||||||||||||||||||||||
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
||||||||||||||||||||||||||||
name |
The name of this brand theme. |
||||||||||||||||||||||||||||
primaryColor |
The primary hex color code for this brand theme. |
||||||||||||||||||||||||||||
secondaryColor |
The secondary hex color code for this brand theme. |
||||||||||||||||||||||||||||
type |
The type of object represented. |
400 Bad Request
Validation error response. Check the info.errors
property in the response for more details.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||||
title |
A short description of the error encountered. |
||||||||||||||
type |
A namespace URI uniquely identifying the error type. |
API errors come in two kinds of varieties: 400
s and 500
s.
Any error with a status code of 400
to 499
is considered a client error. This means it’s usually an error you can handle in your app, and then resend a modified request to the ShootProof API to get a successful response.
An error in the range of 500
to 599
, on the other hand, is a different story. These errors usually mean that a problem occured on the server and resending the request with modifications will not fix the issue.
Pay careful attention to the status codes. We try to stick as close as possible to their defined semantics. For a complete list of HTTP status codes, take a look at the official HTTP Status Code Registry.
Check out our errors guide for more information.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||
title |
A short description of the error encountered. |
||||||||||||
type |
A namespace URI uniquely identifying the error type. |
{
"detail": "There was a problem with your request. Please see `info` for more information.",
"info": {
"errors": {
"type": {
"isEmpty": "Value is required and can't be empty"
}
}
},
"status": 400,
"title": "Bad Request",
"type": "https://developer.shootproof.com/errors#error-bad-request"
}
{
"detail": "You do not have permission to access the requested resource.",
"status": 403,
"title": "Forbidden",
"type": "https://developer.shootproof.com/errors#error-forbidden"
}
{
"detail": "The requested resource could not be found.",
"status": 404,
"title": "Not Found",
"type": "https://developer.shootproof.com/errors#error-not-found"
}
{
"detail": "An error occurred on the server. If this error continues to occur, please contact support.",
"status": 500,
"title": "Internal Server Error",
"type": "https://developer.shootproof.com/errors#error-server-error"
}
{
"detail": "No authorization credentials provided. You must provide an authorization token for this request.",
"status": 401,
"title": "Unauthorized",
"type": "https://developer.shootproof.com/errors#error-unauthorized"
}
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/BrandTheme"
}
}
},
"description": "The updated brand theme."
},
"400": {
"$ref": "#/components/responses/validationError"
},
"default": {
"$ref": "#/components/responses/defaultError"
}
}
/studio/brand/{brandId}/tax-profile
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
Property | Description |
---|---|
page |
The page of results to return. |
rows |
The number of rows to return on each page of results. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
200 OK
Brand tax profiles list response.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
items |
A collection of resources returned in the current result set.
|
||||||||||||||||||||||||||||||
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
||||||||||||||||||||||||||||||
meta read-only |
Metadata describing the current result set.
|
||||||||||||||||||||||||||||||
type |
The type of resource represented. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/List"
},
{
"properties": {
"items": {
"items": {
"$ref": "#/components/schemas/TaxProfile"
},
"title": "Tax Profile",
"type": "array"
},
"type": {
"enum": [
"tax-profile-collection"
]
}
}
}
]
}
}
},
"description": "Brand tax profiles list response."
}
}
A tax profile represents a set of options for collecting tax on orders and invoices. For example, the tax rate, its application to shipping and digital charges, and an optional breakdown can be specified. These options work in conjunction with the taxMethod
on a brand to calculate tax for an order or invoice line item.
/studio/brand/{brandId}/tax-profile
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
Property | Description |
---|---|
applyToDigitals |
If set to true, the profile will apply to digital items. |
applyToShipping |
If set to true, the profile will apply to shipping charges. |
countryCode nullable |
Two-character ISO-3166 code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all countries where products are offered. This field is required if |
name |
Name of the Tax Profile |
stateCode nullable |
Two-character state/province code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all states/provinces within the The property |
taxBreakdownName1 nullable |
Tax breakdowns allow a user to split the tax rate ( Name of the 1st tax breakdown. If the This property is required if |
taxBreakdownName2 nullable |
Name of the 2nd tax breakdown. If the This property is required if |
taxBreakdownPercentage1 nullable |
Percentage of the 1st tax breakdown. If the This property is required if |
taxBreakdownPercentage2 nullable |
Percentage of the 2nd tax breakdown. If the This property is required if |
taxPercentage |
Tax percentage |
type |
The type of resource represented. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/TaxProfile"
}
}
}
}
201 Created
The new tax profile.
Header | Description |
---|---|
Location |
The URL to the new tax profile. |
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
applyToDigitals |
If set to true, the profile will apply to digital items. |
applyToShipping |
If set to true, the profile will apply to shipping charges. |
countryCode nullable |
Two-character ISO-3166 code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all countries where products are offered. This field is required if |
created read-only |
The date on which the entity was created. |
id read-only |
The identifier for the tax profile. |
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
name |
Name of the Tax Profile |
stateCode nullable |
Two-character state/province code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all states/provinces within the The property |
taxBreakdownName1 nullable |
Tax breakdowns allow a user to split the tax rate ( Name of the 1st tax breakdown. If the This property is required if |
taxBreakdownName2 nullable |
Name of the 2nd tax breakdown. If the This property is required if |
taxBreakdownPercentage1 nullable |
Percentage of the 1st tax breakdown. If the This property is required if |
taxBreakdownPercentage2 nullable |
Percentage of the 2nd tax breakdown. If the This property is required if |
taxPercentage |
Tax percentage |
type |
The type of resource represented. |
400 Bad Request
Validation error response. Check the info.errors
property in the response for more details.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||||
title |
A short description of the error encountered. |
||||||||||||||
type |
A namespace URI uniquely identifying the error type. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"201": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/TaxProfile"
}
}
},
"description": "The new tax profile.",
"headers": {
"Location": {
"description": "The URL to the new tax profile.",
"schema": {
"format": "uri",
"type": "string"
}
}
}
},
"400": {
"$ref": "#/components/responses/validationError"
}
}
/studio/brand/{brandId}/tax-profile/{taxProfileId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
taxProfileId required |
The tax profile identifier. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
204 No Content
Successful deletion response.
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"204": {
"description": "Successful deletion response."
}
}
/studio/brand/{brandId}/tax-profile/{taxProfileId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
taxProfileId required |
The tax profile identifier. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
200 OK
A tax profile
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
applyToDigitals |
If set to true, the profile will apply to digital items. |
applyToShipping |
If set to true, the profile will apply to shipping charges. |
countryCode nullable |
Two-character ISO-3166 code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all countries where products are offered. This field is required if |
created read-only |
The date on which the entity was created. |
id read-only |
The identifier for the tax profile. |
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
name |
Name of the Tax Profile |
stateCode nullable |
Two-character state/province code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all states/provinces within the The property |
taxBreakdownName1 nullable |
Tax breakdowns allow a user to split the tax rate ( Name of the 1st tax breakdown. If the This property is required if |
taxBreakdownName2 nullable |
Name of the 2nd tax breakdown. If the This property is required if |
taxBreakdownPercentage1 nullable |
Percentage of the 1st tax breakdown. If the This property is required if |
taxBreakdownPercentage2 nullable |
Percentage of the 2nd tax breakdown. If the This property is required if |
taxPercentage |
Tax percentage |
type |
The type of resource represented. |
API errors come in two kinds of varieties: 400
s and 500
s.
Any error with a status code of 400
to 499
is considered a client error. This means it’s usually an error you can handle in your app, and then resend a modified request to the ShootProof API to get a successful response.
An error in the range of 500
to 599
, on the other hand, is a different story. These errors usually mean that a problem occured on the server and resending the request with modifications will not fix the issue.
Pay careful attention to the status codes. We try to stick as close as possible to their defined semantics. For a complete list of HTTP status codes, take a look at the official HTTP Status Code Registry.
Check out our errors guide for more information.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||
title |
A short description of the error encountered. |
||||||||||||
type |
A namespace URI uniquely identifying the error type. |
{
"detail": "There was a problem with your request. Please see `info` for more information.",
"info": {
"errors": {
"type": {
"isEmpty": "Value is required and can't be empty"
}
}
},
"status": 400,
"title": "Bad Request",
"type": "https://developer.shootproof.com/errors#error-bad-request"
}
{
"detail": "You do not have permission to access the requested resource.",
"status": 403,
"title": "Forbidden",
"type": "https://developer.shootproof.com/errors#error-forbidden"
}
{
"detail": "The requested resource could not be found.",
"status": 404,
"title": "Not Found",
"type": "https://developer.shootproof.com/errors#error-not-found"
}
{
"detail": "An error occurred on the server. If this error continues to occur, please contact support.",
"status": 500,
"title": "Internal Server Error",
"type": "https://developer.shootproof.com/errors#error-server-error"
}
{
"detail": "No authorization credentials provided. You must provide an authorization token for this request.",
"status": 401,
"title": "Unauthorized",
"type": "https://developer.shootproof.com/errors#error-unauthorized"
}
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/TaxProfile"
}
}
},
"description": "A tax profile"
},
"default": {
"$ref": "#/components/responses/defaultError"
}
}
Updates the specified tax profile using the provided data with the entire tax profile being overwritten.
/studio/brand/{brandId}/tax-profile/{taxProfileId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
taxProfileId required |
The tax profile identifier. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
Property | Description |
---|---|
applyToDigitals |
If set to true, the profile will apply to digital items. |
applyToShipping |
If set to true, the profile will apply to shipping charges. |
countryCode nullable |
Two-character ISO-3166 code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all countries where products are offered. This field is required if |
name |
Name of the Tax Profile |
stateCode nullable |
Two-character state/province code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all states/provinces within the The property |
taxBreakdownName1 nullable |
Tax breakdowns allow a user to split the tax rate ( Name of the 1st tax breakdown. If the This property is required if |
taxBreakdownName2 nullable |
Name of the 2nd tax breakdown. If the This property is required if |
taxBreakdownPercentage1 nullable |
Percentage of the 1st tax breakdown. If the This property is required if |
taxBreakdownPercentage2 nullable |
Percentage of the 2nd tax breakdown. If the This property is required if |
taxPercentage |
Tax percentage |
type |
The type of resource represented. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/TaxProfile"
}
}
}
}
200 OK
The tax profile.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
applyToDigitals |
If set to true, the profile will apply to digital items. |
applyToShipping |
If set to true, the profile will apply to shipping charges. |
countryCode nullable |
Two-character ISO-3166 code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all countries where products are offered. This field is required if |
created read-only |
The date on which the entity was created. |
id read-only |
The identifier for the tax profile. |
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
name |
Name of the Tax Profile |
stateCode nullable |
Two-character state/province code identifying the destination country where this tax profile option is available. If not provided, the profile will apply to all states/provinces within the The property |
taxBreakdownName1 nullable |
Tax breakdowns allow a user to split the tax rate ( Name of the 1st tax breakdown. If the This property is required if |
taxBreakdownName2 nullable |
Name of the 2nd tax breakdown. If the This property is required if |
taxBreakdownPercentage1 nullable |
Percentage of the 1st tax breakdown. If the This property is required if |
taxBreakdownPercentage2 nullable |
Percentage of the 2nd tax breakdown. If the This property is required if |
taxPercentage |
Tax percentage |
type |
The type of resource represented. |
400 Bad Request
Validation error response. Check the info.errors
property in the response for more details.
When the Content-Type
of the response is application/problem+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
detail |
A longer description of of the error encountered. |
||||||||||||||
info |
Additional information that may be provided to aid in error resolution.
|
||||||||||||||
status |
The HTTP status code associated with this error. |
||||||||||||||
title |
A short description of the error encountered. |
||||||||||||||
type |
A namespace URI uniquely identifying the error type. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/TaxProfile"
}
}
},
"description": "The tax profile."
},
"400": {
"$ref": "#/components/responses/validationError"
}
}
Returns a list of all watermarks for the brand. Query string parameters may be used to affect the response, including pagination, sorting, and filtering.
/studio/brand/{brandId}/watermark
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
Property | Description |
---|---|
page |
The page of results to return. |
rows |
The number of rows to return on each page of results. |
searchName |
A string with which to filter watermarks by name. |
sortBy |
The property by which items returned should be sorted. |
sortType |
The direction in which sorting should occur. |
Property | Description |
---|---|
Authentication required |
The bearer token used to make authenticated requests to the ShootProof Studio API. See the authorization guide for more information on how to obtain and use bearer tokens. |
200 OK
Watermarks list response.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
items |
A collection of resources returned in the current result set.
|
||||||||||||||||||||||
links required read-only |
Each property defines a hypertext link relationship as indicated by a link object or array of link objects. The target URL of each hypertext link relationship is related to the current resource according to the defined semantics of the link relationship property name. |
||||||||||||||||||||||
meta read-only |
Metadata describing the current result set.
|
||||||||||||||||||||||
type |
The model type for the list response object. |
The following schema is based on OpenAPI 3.0 and is provided in our downloadable OpenAPI document.
{
"200": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/WatermarkCollection"
}
}
},
"description": "Watermarks list response."
}
}