ShootProof helps brands keep in touch with their customers through sending email messages to event visitors, contacts attached to an event or invoice, and more.
In addition to sending email messages on demand, ShootProof allows brands to set up automated emails that are sent whenever certain activities take place, and each brand has full control over when these are sent and for what activities they are sent.
/studio/brand/{brandId}/contact/{contactId}/email
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
contactId required |
The contact 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 |
---|---|
body |
The message to include in the body of the email. |
headline |
The headline to use in the email body. |
subject |
The subject line for the email message. |
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": {
"allOf": [
{
"properties": {
"buttonText": {
"readOnly": true
},
"recipientEmails": {
"readOnly": true
}
}
},
{
"$ref": "#/components/schemas/StudioToClientEmail"
}
]
}
}
},
"required": true
}
202 Accepted
On success, we respond with the contact to whom the email message was sent.
Header | Description |
---|---|
Content-Location |
The URL to the contact that is located in the response body. |
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 address for this contact. |
||||||||
birthDate nullable |
The date on which this contact was born. |
||||||||
birthDateDisplay read-only |
The date on which this contact was born, properly formatted according to the brand’s locale. |
||||||||
businessName nullable |
The name for the business with which this contact is associated. |
||||||||
created read-only |
The date on which this contact was created |
||||||||
The email address for this contact. |
|||||||||
firstName nullable |
The first name for this contact. |
||||||||
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
||||||||
lastName nullable |
The last name for this contact. |
||||||||
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 nullable |
The full name for this contact. |
||||||||
notes nullable |
Notes made by the studio about this contact. |
||||||||
phone nullable |
The phone number for this contact. |
||||||||
refereeContacts read-only |
Contacts that have been referred by this contact. |
||||||||
referringContact nullable read-only |
The contact who referred this contact. |
||||||||
referringContactId nullable |
The identifier for the contact who referred this contact. |
||||||||
resourceCounts read-only |
|
||||||||
tags |
Tags describing this contact. |
||||||||
thirdPartyId nullable |
The identifier for this contact in the source system from which it originated. |
||||||||
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.
{
"202": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/Contact"
}
}
},
"description": "On success, we respond with the contact to whom the email message was\nsent.",
"headers": {
"Content-Location": {
"description": "The URL to the contact that is located in the response body.",
"schema": {
"format": "uri",
"type": "string"
}
}
}
},
"400": {
"$ref": "#/components/responses/validationError"
}
}
/studio/brand/{brandId}/contract/{contractId}/email
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
contractId required |
A contract 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 contract email object used to send an email message.
Property | Description |
---|---|
body |
The message to include in the body of the email. |
buttonText |
The text for the call-to-action button in the email body. |
headline |
The headline to use in the email body. |
recipientEmails |
Email address(es) to send the email to. If provided, must be an array of valid email addresses. Optional, but may be required by child schemas. |
subject |
The subject line for the email message. |
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/ContractEmail"
}
}
},
"description": "The contract email object used to send an email message.",
"required": true
}
202 Accepted
On success, we respond with the contract for which the email message was sent.
Header | Description |
---|---|
Content-Location |
The URL to the contract that is located in the response body. |
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
activity read-only |
A list of activities that have occurred with this contract. |
||||||||||||||
bodyContainsMagicBlank read-only |
Indicates if the HTML body of the contract contains one or more 'magic blank' placeholder strings. |
||||||||||||||
bodyHtml |
The HTML body of the contract. |
||||||||||||||
brandTheme read-only |
A brand theme. |
||||||||||||||
brandThemeId |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
||||||||||||||
cancelationMessage nullable |
Optional cancelation message to include in studio-to-client email sent when contract status moves to canceled state. As of this writing, value only used on |
||||||||||||||
contacts required read-only |
A collection of contacts associated with this contract |
||||||||||||||
contractStatus |
The current status of the contract.
|
||||||||||||||
contractTemplate required read-only | |||||||||||||||
contractTemplateId nullable |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
||||||||||||||
created read-only |
The creation date of this contract. |
||||||||||||||
expirationDate |
The date on which this contract expires. |
||||||||||||||
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
||||||||||||||
invoices read-only |
An array of linked invoices. |
||||||||||||||
isEditable |
Whether the contract is able to be edited. |
||||||||||||||
isHidden |
Whether the contract has been marked 'hidden'. |
||||||||||||||
languageCode |
The Unicode CLDR language tag for the language used in this contract. |
||||||||||||||
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 for this contract. |
||||||||||||||
publicId read-only |
The public identifier for this contract (may be used in the portal website). |
||||||||||||||
shootDate nullable |
This contract covers a photo shoot or event that took place on this date. |
||||||||||||||
signatureClient nullable read-only |
The contract signature for the client. |
||||||||||||||
signatureStudio nullable read-only |
The contract signature for the studio. |
||||||||||||||
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.
{
"202": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/Contract"
}
}
},
"description": "On success, we respond with the contract for which the email message\nwas sent.",
"headers": {
"Content-Location": {
"description": "The URL to the contract that is located in the response body.",
"schema": {
"format": "uri",
"type": "string"
}
}
}
},
"400": {
"$ref": "#/components/responses/validationError"
}
}
/studio/brand/{brandId}/email/automation-group
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
Property | Description |
---|---|
filterCuratedUserAutomations |
Filter curated email automation groups created by ShootProof and cloned by users |
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
Email automation groups.
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/EmailAutomationGroupCollection"
}
}
},
"description": "Email automation groups."
}
}
/studio/brand/{brandId}/email/automation-group
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 email automation group to create.
Property | Description |
---|---|
automations |
A collection of automated email messages that should be sent to a specified group of recipients at a configured time. |
clonedFromId nullable |
If cloned from another automation group, the identifier for the group from which this was cloned. |
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
name |
The name for this email automation group. |
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/EmailAutomationGroup"
}
}
},
"description": "The email automation group to create.",
"required": true
}
201 Created
The new email automation group.
Header | Description |
---|---|
Location |
The URL to the new email automation group. |
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
automations |
A collection of automated email messages that should be sent to a specified group of recipients at a configured time. |
clonedFromId nullable |
If cloned from another automation group, the identifier for the group from which this was cloned. |
created read-only |
The date on which the entity was created. |
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
isClonedFromSpAutomationGroup read-only |
If this automation group was cloned from a ShootProof-created email automation group, then this property will be |
linkedEventsCount read-only |
The total number of non-deleted events that are using the automation group. |
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 for this email automation group. |
type |
The type of resource represented. |
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/EmailAutomationGroup"
}
}
},
"description": "The new email automation group.",
"headers": {
"Location": {
"description": "The URL to the new email automation group.",
"schema": {
"format": "uri",
"type": "string"
}
}
}
}
}
/studio/brand/{brandId}/email/automation-group/{emailAutomationGroupId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
emailAutomationGroupId required |
An email automation group 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
The resource was successfully deleted.
403 Forbidden
The provided access credentials are not valid for the requested resource.
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. |
404 Not Found
The requested resource could not be found.
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.
{
"204": {
"$ref": "#/components/responses/deleteSuccess"
},
"403": {
"$ref": "#/components/responses/forbiddenError"
},
"404": {
"$ref": "#/components/responses/notFoundError"
}
}
/studio/brand/{brandId}/email/automation-group/{emailAutomationGroupId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
emailAutomationGroupId required |
An email automation group 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
Email automation group
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
automations |
A collection of automated email messages that should be sent to a specified group of recipients at a configured time. |
clonedFromId nullable |
If cloned from another automation group, the identifier for the group from which this was cloned. |
created read-only |
The date on which the entity was created. |
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
isClonedFromSpAutomationGroup read-only |
If this automation group was cloned from a ShootProof-created email automation group, then this property will be |
linkedEventsCount read-only |
The total number of non-deleted events that are using the automation group. |
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 for this email automation group. |
type |
The type of resource represented. |
403 Forbidden
The provided access credentials are not valid for the requested resource.
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. |
404 Not Found
The requested resource could not be found.
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/EmailAutomationGroup"
}
}
},
"description": "Email automation group"
},
"403": {
"$ref": "#/components/responses/forbiddenError"
},
"404": {
"$ref": "#/components/responses/notFoundError"
}
}
/studio/brand/{brandId}/email/automation-group/{emailAutomationGroupId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
emailAutomationGroupId required |
An email automation group 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 email automation group that will update the existing one.
Property | Description |
---|---|
automations |
A collection of automated email messages that should be sent to a specified group of recipients at a configured time. |
clonedFromId nullable |
If cloned from another automation group, the identifier for the group from which this was cloned. |
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
name |
The name for this email automation group. |
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/EmailAutomationGroup"
}
}
},
"description": "The email automation group that will update the existing one.",
"required": true
}
200 OK
The updated email automation group.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
automations |
A collection of automated email messages that should be sent to a specified group of recipients at a configured time. |
clonedFromId nullable |
If cloned from another automation group, the identifier for the group from which this was cloned. |
created read-only |
The date on which the entity was created. |
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
isClonedFromSpAutomationGroup read-only |
If this automation group was cloned from a ShootProof-created email automation group, then this property will be |
linkedEventsCount read-only |
The total number of non-deleted events that are using the automation group. |
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 for this email automation group. |
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. |
403 Forbidden
The provided access credentials are not valid for the requested resource.
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. |
404 Not Found
The requested resource could not be found.
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/EmailAutomationGroup"
}
}
},
"description": "The updated email automation group."
},
"400": {
"$ref": "#/components/responses/validationError"
},
"403": {
"$ref": "#/components/responses/forbiddenError"
},
"404": {
"$ref": "#/components/responses/notFoundError"
}
}
/studio/brand/{brandId}/email/template
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
Property | Description |
---|---|
filterForEmailAutomation |
Filter email templates that can be used to create an email automation. |
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
Email templates
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/EmailTemplateCollection"
}
}
},
"description": "Email templates"
}
}
If the resourceType
and resourceId
query string parameters are present in the request, the variables within the email template properties will be replaced with appropriate values for the specified resource. This is provided for convenience to allow the studio user to view an email template as it might appear when sent to their clients.
/studio/brand/{brandId}/email/template/{emailTemplateId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
brandId required |
The brand identifier. |
emailTemplateId required |
An email template identifier. |
Property | Description |
---|---|
resourceId |
The identifier of the |
resourceType |
Identifies the resource type for the given The |
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
An email template
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
body |
The user-entered body content of the email message, in HTML format. |
||||||||||||||||||||||||||||||||||
buttonText |
If a call-to-action button is displayed in the email, this is the text label that will appear on the button. |
||||||||||||||||||||||||||||||||||
created read-only |
The date on which the entity was created. |
||||||||||||||||||||||||||||||||||
emailTemplateType |
The constant ShootProof identifier for the email template type.
|
||||||||||||||||||||||||||||||||||
headline |
If a headline is displayed in the email, this is the text of that headline. |
||||||||||||||||||||||||||||||||||
htmlEmail read-only |
The full HTML email template, complete with in-lined CSS, headers, and footers. This may be used to render a representation of the email message, allowing the studio user an opportunity to preview their message before sending it. |
||||||||||||||||||||||||||||||||||
htmlEmailCss read-only |
CSS styles that may be used to style a representation of the email message, providing the studio user an opportunity to preview their message before sending it. |
||||||||||||||||||||||||||||||||||
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
||||||||||||||||||||||||||||||||||
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 email template. |
||||||||||||||||||||||||||||||||||
resourceType nullable read-only |
If present, this describes the type of resource represented by this email template. |
||||||||||||||||||||||||||||||||||
subject |
The email subject line to use for this template. |
||||||||||||||||||||||||||||||||||
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/EmailTemplate"
}
}
},
"description": "An email template"
},
"default": {
"$ref": "#/components/responses/defaultError"
}
}
/studio/email/curated-automation-group
We’ve got some helpful examples coming your way soon. Stay tuned!
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
Email automation groups curated by ShootProof.
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/CuratedEmailAutomationGroupCollection"
}
}
},
"description": "Email automation groups curated by ShootProof."
}
}
/studio/email/curated-automation-group/{emailAutomationGroupId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
emailAutomationGroupId required |
An email automation group 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
Email automation group curated by ShootProof.
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
automations |
A collection of automated email messages that should be sent to a specified group of recipients at a configured time. |
created read-only |
The date on which the entity was created. |
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
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 for this email automation group. |
type |
The type of resource represented. |
404 Not Found
The requested resource could not be found.
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/CuratedEmailAutomationGroup"
}
}
},
"description": "Email automation group curated by ShootProof."
},
"404": {
"$ref": "#/components/responses/notFoundError"
}
}
Following the semantics of the HTTP COPY method, this will copy the ShootProof-curated email automation group identified by the request URI to the brand email automation group collection identified by the URI in the Destination
header (e.g., https://api.shootproof.com/studio/brand/123/email/automation-group
).
/studio/email/curated-automation-group/{emailAutomationGroupId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
emailAutomationGroupId required |
An email automation group identifier. |
Property | Description |
---|---|
method required |
The HTTP method overloading this |
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. |
Destination required |
The URI of the brand email automation group collection where a new email automation group based on this ShootProof-curated email automation group should be created. |
201 Created
The new email automation group.
Header | Description |
---|---|
Location |
The URL to the new email automation group. |
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description |
---|---|
automations |
A collection of automated email messages that should be sent to a specified group of recipients at a configured time. |
clonedFromId nullable |
If cloned from another automation group, the identifier for the group from which this was cloned. |
created read-only |
The date on which the entity was created. |
id |
An entity identifier. It may be either an integer or a universally unique identifier (UUID) represented as a string. |
isClonedFromSpAutomationGroup read-only |
If this automation group was cloned from a ShootProof-created email automation group, then this property will be |
linkedEventsCount read-only |
The total number of non-deleted events that are using the automation group. |
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 for this email automation group. |
type |
The type of resource represented. |
403 Forbidden
The provided access credentials are not valid for the requested resource.
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. |
404 Not Found
The requested resource could not be found.
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. |
409 Conflict
The request could not be completed due to a conflict with the current state of the target resource.
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/EmailAutomationGroup"
}
}
},
"description": "The new email automation group.",
"headers": {
"Location": {
"description": "The URL to the new email automation group.",
"schema": {
"format": "uri",
"type": "string"
}
}
}
},
"403": {
"$ref": "#/components/responses/forbiddenError"
},
"404": {
"$ref": "#/components/responses/notFoundError"
},
"409": {
"$ref": "#/components/responses/conflictError"
}
}
/studio/email/template-type
We’ve got some helpful examples coming your way soon. Stay tuned!
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
Email template types
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/EmailTemplateTypeCollection"
}
}
},
"description": "Email template types"
}
}
If the resourceType
and resourceId
query string parameters are present in the request, the variables within the properties of the defaults
will be replaced with appropriate values for the specified resource. This is provided for convenience to allow the studio user to view an email template as it might appear when sent to their clients.
/studio/email/template-type/{emailTemplateTypeId}
We’ve got some helpful examples coming your way soon. Stay tuned!
Property | Description |
---|---|
emailTemplateTypeId required |
An email template type identifier. |
Property | Description |
---|---|
resourceId |
The identifier of the |
resourceType |
Identifies the resource type for the given The |
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
An email template type
When the Content-Type
of the response is application/vnd.shootproof+json
, the following properties will be available in the response body.
Property | Description | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
defaults nullable |
The system default values for this email template type.
|
||||||||||||||||||||||||||||||||||
emailTemplateType |
The constant ShootProof identifier for the email template type.
|
||||||||||||||||||||||||||||||||||
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. |
||||||||||||||||||||||||||||||||||
resourceType nullable |
If present, this describes the type of resource represented by this email template. |
||||||||||||||||||||||||||||||||||
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/EmailTemplateType"
}
}
},
"description": "An email template type"
},
"default": {
"$ref": "#/components/responses/defaultError"
}
}
/studio/referral/email
We’ve got some helpful examples coming your way soon. Stay tuned!
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 |
---|---|
body |
The message to include in the body of the email. |
recipientEmails |
Email address(es) to send the email to. If provided, must be an array of valid email addresses. Optional, but may be required by child schemas. |
subject |
The subject line for the email message. |
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": {
"allOf": [
{
"required": [
"recipientEmails"
]
},
{
"$ref": "#/components/schemas/BasicEmailMessage"
}
]
}
}
},
"required": true
}
202 Accepted
On success, we respond with a collection of email messages sent.
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. |
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.
{
"202": {
"content": {
"application/vnd.shootproof+json": {
"schema": {
"$ref": "#/components/schemas/EmailCollection"
}
}
},
"description": "On success, we respond with a collection of email messages sent."
},
"400": {
"$ref": "#/components/responses/validationError"
}
}