SmartFile API
Getting Started
The SmartFile API allows programmers to create automated interfaces that can pass files and information directly into the SendMyAd and Virtual Publisher portals without user intervention. This API is based on a REST interface that accepts commands via HTTP POST
variables.
To get started using the API a few things are required:
- Request an API key. API keys can be received via a request to the SendMyAd staff.
- Identify the publisher code you wish to send files to. If you're a publisher, this can be seen within your company profile. Otherwise, submit a request to the SendMyAd staff.
- You will need the ability to make an HTTP
POST
with required variables & follow case sensitivity naming conventions. This can be done in most languages. - It is also preferable that you have the ability to parse
XML
and/orJSON
responses, since this is the native result of all API calls. Without it, you may not know your results.
Download our SmartFile API Postman collection and try it out!
To use: download and unzip the archive. In Postman, import both our collection and environment files. Fill in your information (publisher code, API key, etc.) in the environment variables and run the examples.
Examples
Below is an example of how to return a list of issues for a publication. We recommend using the cURL command line application for testing, because it will accurately display the responses in your terminal. (Note: SendMyAd does not supply example code in specific programming languages)
Request Example via cURL POST
curl -v -3 https://yourpublishername.sendmyad.com/SmartFile/api.php -F apiKey=12345678 -F action=getIssueList -F className=Issue -F publisherCode=XYZ -F publicationName="Testing Publication"
Alternatively, you can simply create a GET
style URL and run in a browser.
However, various browsers and versions will handle the response differently.
If the XML
or JSON
response does not display properly, try another browser or use cURL instead.
Request Example via URL
https://yourpublishername.sendmyad.com/SmartFile/api.php?apiKey=12345678&action=getIssueList&className=Issue&publisherCode=XYZ&publicationName=Testing%20Publication
POST Example via HTML Form
<!-- POST AN AD FILE THROUGH HTML FORM -->
<form method="post" action="https://portal.sendmyad.com/SmartFile/api.php" enctype="multipart/form-data">
<input type="file" id="upfile_0" name="upfile_0" value="">
<input type="hidden" id="action" name="action" value="uploadAd" />
<input type="hidden" id="className" name="className" value="Upload" />
Key:
<input type="text" id="apiKey" class="w120" name="apiKey" value="[YOURKEY]" />
PublisherCode:
<input type="text" id="publisherCode" name="publisherCode" value="[YOURDATA]" />
PublicationCode:
<input type="text" id="publicationCode" name="publicationCode" value="[YOURDATA]" />
IssueCode:
<input type="text" id="issueCode" name="issueCode" value="[YOURDATA]" />
AdSpecCode:
<input type="text" id="adSpecCode" name="adSpecCode" value="[YOURDATA]" />
colorProfileShortLabel:
<input type="text" id="colorProfileCode" name="colorProfileCode" value="[YOURDATA]" />
<input type="submit" class="btn" name="mysubmit" value="Upload">
</form>
<!-- RESERVE AN AD SPACE -->
<form method="post" action="https://portal.sendmyad.com/SmartFile/api.php" enctype="multipart/form-data">
<input type="hidden" id="action" name="action" value="reserveAdSpace" />
<input type="hidden" id="className" name="className" value="Reservation" />
<input type="hidden" id="responseFormat" name="responseFormat" value="JSON" />
Publisher Code:
<input type="text" id="publisherCode" name="publisherCode" value="[YOURDATA]" />
API Key:
<input type="text" id="apiKey" name="apiKey" value="[YOURKEY]" />
Publication Code:
<input type="text" id="publicationCode" name="publicationCode" value="[YOURDATA]" />
Ad Spec Code:
<input type="text" id="adSpecCode" name="adSpecCode" value="[YOURDATA]" />
Issue Code:
<input type="text" id="issueCode" name="issueCode" value="[YOURDATA]" />
Color Profile Name:
<input type="text" id="colorProfileName" name="colorProfileName" value="[YOURDATA]" />
Label:
<input type="text" id="label" name="label" value="API TEST AD" />
Credit Hold:
<input type="text" id="creditStatus" name="creditStatus" value="0" />
Ad Instructions:
<input type="text" id="adInstructions" name="adInstructions" value="lorem ipsum..." />
<input type="submit" class="btn" name="mysubmit" value="Send">
</form>
The Upload
Class
The upload class contains all of the functions needed to post a file to SendMyAd and Virtual Publisher.
Guidelines
- File posting is limited to no more than 100mb per file
- Files must be uploaded 1 at a time
- To post a file, your form must employ the method
POST
,GET
will not work and type of multipart/form-data. - Your file form variable must be named
upload_0
- The api supports PDF only. Each PDF must have a valid embedded xmp job ticket. Supported job ticket formats are GWG Ad Ticket and SMA Job Ticket format.
Available Actions
upload
is the action which tells the api to upload the supplied file.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | The action variable tells the api what you want to do. |
className
|
String | Yes | The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. Api keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
upfile_0
|
The File | Yes | This is a reference to the file that you wish to upload. |
Response
<results>
<success>true/false</success>
<error>Each error that occurred as a text description. Each error will generate a new xml error tag.</error>
<processId>A unique string which represents the ad.</processId>
</results>
uploadPage
is the action which tells the api to upload the supplied file to a Virtual Publisher plan.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | The action variable tells the api what you want to do. |
className
|
String | Yes | The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. Api keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
issueCode
|
String | Yes | The issueCode tells the api to what issue the page will be assigned. |
upfile_0
|
The File | Yes | This is a reference to the file that you wish to upload. |
Response
<results>
<success>true/false</success>
<error>Each error that occurred as a text description. Each error will generate a new xml error tag.</error>
<processId>A unique string which represents the ad.</processId>
</results>
The Reservation
Class
This class contains ways to create reservations in the system.
Available Actions
reserveAdSpace
creates an insertion order to be fulfilled by an ad sender.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "reserveAdSpace" The action variable tells the api what you want to do. |
className
|
String | Yes | "Reservation" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. Api keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher you wish to send the space reservation to, must have been granted access or be the same user company. |
publicationId
|
Int | 1 publication identifer is required |
The publication's SendMyAd ID you wish to use. publicationId overrides publicationCode and publicationName .Publication IDs can be obtained through the publication class. |
publicationCode
|
String | 1 publication identifer is required |
The publication code you wish to use. publicationCode overrides publicationName . |
publicationName
|
String | 1 publication identifer is required | The publication name you wish to use. It must match a publication in the system owned by the publisher. |
adSpecId
|
Int | 1 ad spec identifier is required | The ad size SendMyAd ID you wish to use. |
adSpecCode
|
String | 1 ad spec identifier is required | The ad size SendMyAd code you wish to use. |
adSpecHeight
|
Int | 1 ad spec identifier is required | The exact trim height size represented in the SendMyAd system that you wish to use. |
adSpecWidth
|
Int |
Required if adSpecHeight is used
|
The exact trim width size represented in the SendMyAd system that you wish to use. |
adSpecBleed
|
Int |
Required if adSpecHeight is used
|
The exact bleed side of the size represented in the SendMyAd system that you wish to use. |
colorProfileId
|
Int | 1 color profile identifier is required | The color Profile SendMyAd id you wish to use. |
colorProfileName
|
String | 1 color profile identifier is required | The exact color profile name you wish to use. |
notify
|
Boolean | No | 'true' or 'false': notify the assignment user |
notifyOnDate
|
String | No | Date format: MM/DD/YYYY. Notify the assignment user on this date instead of immediately |
reNotifyForDays
|
Int | No | Schedule notifications to the assignment user, from now until the issue materials due date, at the interval of days specified with this value. |
assignmentUserId
|
Int | No |
A valid SendMyAd userId overrides assignmentUserEmail , assignmentUserCompanyId , assignmentUserCompany , and assignmentUserCompanyCode .
Assignment user will be the advertiser user who is assigned to the ad. They will receive all notifications for the advertiser. If no assignment user information is provided, it can be added later in the portal. |
assignmentUserEmail
|
String | No |
A legal SendMyAd user email which overrides assignmentUserCompanyId , assignmentUserCompany , and assignmentUserCompanyCode . |
assignmentUserCompanyId
|
Int | No |
A legal SendMyAd user companyId (termId ) which overrides assignmentUserCompany , and assignmentUserCompanyCode . |
assignmentUserCompanyCode
|
String | No |
A legal SendMyAd user company code which overrides assignmentUserCompany . |
assignmentUserCompany
|
String | No | A legal SendMyAd user company name |
issueId
|
Int | 1 issue identifier is required | A valid issueId for the publication |
issueRunDate
|
String | 1 issue identifier is required | A date of the format mm/dd/yyyy |
issueCode
|
String | 1 issue identifier is required | A SMA code which matches a running issue. |
bookingNumber
|
String | No | A booking number which will be tracked on the ad material. |
processId
|
String | No | If a unique processId is not supplied one will be created for you. This should only be created by a machine. |
advertiser / label
|
String | No | This is a label for the ad materials. API accepts either advertiser or label as parameter. |
product
|
String | No | The product label represented in the ad. |
headline
|
String | No | The headline represented in the ad. |
categoryId
|
Int | No |
A system category ID, must be from a category already present in the system. See Publication.addAdCategory function. |
sectionId
|
Int | No |
A system section ID, must be from a publication section already present in the system. See Publication.addSection function. |
pageCount
|
Int | No | Default is 1. If the chosen ad specification is an open multipage ad, the page count defines how many pages the ad should cover. Less than 1 is not supported. |
folioNumber
|
String | No | The intended folio number of the ad. This does not dictate true layout placement and is only a suggested position. Default is empty. |
advertiserNumber
|
String | No | A unique ad identifier supplied from the advertiser's system or workflow. Possibly adId. Default is empty. |
publisherInfo
|
String | No | Publisher supplied information about the ad. Usually not usable for advertisers. Default is empty. |
productUrl
|
String | No | A web url which represents the product for the advertisement. Default empty |
externalId
|
String | No | An external unique identifier supplied by the sending system. Usually used for finding ads by a 3rd party system's id. Default empty |
planOnly
|
Int | No | Defines if the reservation should only be visible in the Virtual publisher product and not the SMA product. Default 0. 1 true or 0 false |
printAdTypeId
|
Int | No | Defines which type of ad this is. Useful for categorization and reporting of ad types. Default 1 (Supplied Ad) Options: 1 (Supplied Ad), 2 (House Ad), 3 (PSA) |
positionTagIds
|
String | No | A comma-separated list of position tag IDs. |
positionTagCodes
|
String | No | A comma-separated list of position tag codes. |
positionTagNames
|
String | No | A comma-separated list of position tag names. |
creditStatus
|
Int | No | 1 or 0 to place the ad on credit hold. |
cancelled
|
Int | No | 1 or 0 to flag the ad as cancelled. |
salesRepId
|
Int | No | A user ID who represents the publisher sales person for the ad. |
salesRepIds
|
String | No | A comma-separated list of user IDs that represents the publisher sales representatives for the ad. |
responseType
|
String | No | Default xml , alternative option is "json". Allows system to send alternate response object type. All newly created api functions will default to JSON. |
adRate
|
Float | No | A float money value which represents the ad's rate cost. |
netCost
|
Float | No | A float money value which represents the ad's net cost. |
adInstructions
|
String | No | Ad instructions from the advertiser |
brand
|
String | No | Brand information |
externalPosition
|
String | No | also referred to as Requested Position |
custom_[internal name]
|
String | No |
Custom metadata fields. Format: custom_[internal name] where internal name matches the configuration in SendMyAd's Manage Custom Metadata Options screen. Example: A custom field with an internal name of "salesNumber" would be referenced by custom_salesNumber . |
notifyPublisher
|
Int | No | Default is 0. Set to 1 to send notification email to publisher about the new reservation |
Response
<results>
<success>true/false</success>
<error>Each error that occurred as a text description. Each error will generate a new xml error tag.</error>
<processId>A unique string which represents the ad.</processId>
</results>
addMaterials
add material to print ad reservation
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addMaterials" The action variable tells the api what you want to do. |
className
|
String | Yes | "Reservation" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. Api keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher you wish to send the space reservation to, must have been granted access or be the same user company. |
processId
|
String | Yes | The unique identifier for the ad reservation. |
upfile_0
|
The File | Yes | This is a reference to the file that you wish to upload. |
Response
<results>
<success>true/false</success>
<error>Upload failed. Please try again.</error>
<processId>A unique string which represents the ad.</processId>
</results>
changeAdvertiserContact
change advertiser contact for print ad
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "changeAdvertiserContact" The action variable tells the api what you want to do. |
className
|
String | Yes | "Reservation" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. Api keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher you wish to send the space reservation to, must have been granted access or be the same user company. |
processId
|
String | Yes | The unique identifier for the ad reservation. |
notify
|
Int | No, defaults to 1 | 1 or 0, send the newly assigned contact an email |
|
At least one of the following fields is required | ||
assignmentUserId
|
Int | No | The ID of the user who will be assigned to the ad. |
assignmentUserEmail
|
String | No | The email of the user who will be assigned to the ad. |
Response
{"success":1,"msg":"Advertiser contact changed successfully"}
The Message
Class
This class contains all of the functions needed to send messages related the SendMyAd Portal
Available Actions
sendAdMaterialsReminder
will take supplied processIds and send out an email reminder to each ad contact.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "sendAdMaterialsReminder" The action variable tells the api what you want to do. |
className
|
String | Yes | "Message" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
processIds
|
String | Yes | This needs to be a comma delimited list of processIds or an url encoded json block of processIds. |
Response
<results>
<success>true/false</success>
<error>Each error that occurred as a text description. Each error will generate a new xml error tag.</error>
<emailsSentCount>The number of emails successfully sent out.</emailsSentCount>
</results>
schedule
will allow to schedule notifications after editing a reservation’s assignmentUserId. .
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "schedule" The action variable tells the api what you want to do. |
className
|
String | Yes | "Message" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
processId
|
String | Yes | Unique process id |
notifyOnDate
|
String | Yes | A date format mm/dd/yyyy to schedule the ad reservation notification. |
reNotifyForDays
|
Int | No | The number of days you want to send the reminder emails. |
Response
{"success":1,"msg":"Notification scheduled for Print Ad processId 202373193332075"}
The User
Class
This class contains functions related to SendMyAd users.
Available Actions
addPublisherSalesRep
adds a new publisher based sales representative user to the system.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addPublisherSalesRep" The action variable tells the api what you want to do. |
className
|
String | Yes | "User" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company. |
email
|
String | Yes | A url encoded email address. This will be used as the username and email of the created user |
password
|
String (31) | Yes | A password must be 8 characters or greater, no spaces, cannot contain special chars, and cannot contain any of the following: 1234, password, welcome, abc123, qwerty, asdfg, zxcvb, sunshine, princess |
firstName
|
String (255) | No | The first name of the user |
lastName
|
String (255) | No | The last name of the user |
phone
|
String (25) | No | The phone number |
ext
|
String (10) | No | The phone extension |
userPhone2
|
String (25) | No | A secondary phone number |
jobTitle
|
String (255) | No | The user's job title |
notify
|
Int | No | 1 or 0, trigger to send user a welcome email |
Response
<results>
<success>true/false</success>
<userId>the id of the newly created user.</userId>
<msg>Any response message.</msg>
</results>
addAgencyUser
adds a new agency based user to the system as non-admins.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addAgencyUser" The action variable tells the api what you want to do. |
className
|
String | Yes | "User" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company. |
companyId
|
String | Yes | The id of the agency company you wish to add the user to. |
email
|
String (255) | Yes | A URL encoded email address. This will be used as the username and email of the created user |
password
|
String (31) | Yes | A password must be 8 characters or greater, no spaces, cannot contain special chars, and cannot contain any of the following: 1234, password, welcome, abc123, qwerty, asdfg, zxcvb, sunshine, princess |
firstName
|
String (255) | No | The first name of the user |
lastName
|
String (255) | No | The last name of the user |
phone
|
String (25) | No | The phone number |
ext
|
String (10) | No | The phone extension |
userPhone2
|
String (25) | No | A secondary phone number |
jobTitle
|
String (255) | No | The user\s job title |
notify
|
Int | No | 1 or 0, trigger to send user a welcome email |
Response
<results>
<success>true/false</success>
<userId>the id of the newly created user.</userId>
<msg>Any response message.</msg>
</results>
addAdvertiserUser
adds a new advertiser based user to the system as non-admins.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addAdvertiserUser" The action variable tells the api what you want to do. |
className
|
String | Yes | "User" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company. |
companyId
|
String | Yes | The id of the agency company you wish to add the user to. |
email
|
String (255) | Yes | A URL encoded email address. This will be used as the username and email of the created user |
password
|
String (31) | Yes | A password must be 8 characters or greater, no spaces, cannot contain special chars, and cannot contain any of the following: 1234, password, welcome, abc123, qwerty, asdfg, zxcvb, sunshine, princess |
firstName
|
String (255) | No | The first name of the user |
lastName
|
String (255) | No | The last name of the user |
phone
|
String (25) | No | The phone number |
ext
|
String (10) | No | The phone extension |
userPhone2
|
String (25) | No | A secondary phone number |
jobTitle
|
String (255) | No | The user\s job title |
notify
|
Int | No | 1 or 0, trigger to send user a welcome email |
Response
<results>
<success>true/false</success>
<userId>the id of the newly created user.</userId>
<msg>Any response message.</msg>
</results>
checkAdvertiserUserExists
checks if an advertiser user exists based on the supplied email address. Returns userId if found.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "checkAdvertiserUserExists" The action variable tells the api what you want to do. |
className
|
String | Yes | "User" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company. |
email
|
String (255) | Yes | A URL encoded email address. This will be used as the username and email of the created user |
Response
{"success":1,"msg":"", "userId":"123"}
checkPublisherUserExists
checks if an Publisher user exists based on the supplied email address. Returns userId if found.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "checkPublisherUserExists" The action variable tells the api what you want to do. |
className
|
String | Yes | "User" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company. |
email
|
String (255) | Yes | A URL encoded email address. This will be used as the username and email of the created user |
Response
{"success":1,"msg":"", "userId":"123"}
updateUser
updates a publisher, agency or advertiser user's information.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "updateUser" The action variable tells the api what you want to do. |
className
|
String | Yes | "User" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company. |
companyId
|
Int | Yes | The id of the advertiser company you wish to add the user to. |
userId
|
Int | Yes | The ID of the user to edit. (at least one of the following is required) |
email
|
String (255) | No | a URL encoded email address. It must be unique. |
firstName
|
String (255) | No | The first name of the user |
lastName
|
String (255) | No | The last name of the user |
phone
|
String (25) | No | The phone number |
ext
|
String (10) | No | The phone extension |
userPhone2
|
String (25) | No | A secondary phone number |
jobTitle
|
String (255) | No | The user's job title |
Response
{"success":1,"msg":"", "userId":"123"}
The Ad
Class
This class contains ways to get and update ad information in the system.
Available Actions
getAdInfo
queries an ad by its unique processId to list available information known about the ad.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAdInfo" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Required if externalId is not supplied. | The unique identifier for the ad. |
externalId
|
String | Required if processId is not supplied | The unique external identifier for the ad. |
Response
{"success":"1","msg":"","data":{"key1":"value1","key2":"value2",...}
getAdsByChanged
returns an ad list in json by last updated in number of minutes.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAdsByChanged" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
minutes
|
String | Yes | A number of minutes you wish to check by last changed. Must be between 1 and 44640. |
Response
{
"success":1,
"rowCount":16,
"data":{
"123455":{
"processId":"12342314",
"fileName":"my.pdf",
"publicationName":"My Publication",
},
...
}
}
editAd
edits an ad by processId using a pre-defined set of fields.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "editAd" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Yes | The unique identifier for the ad. |
|
At least one of the following fields is required | ||
materialsId
|
String | No | |
creditStatus
|
Int | No | 0 or 1 |
cancelled
|
Int | No | 0 or 1 |
advertiser / label
|
String | No | This is a label for the ad materials. API accepts either advertiser or label as parameter. |
headline
|
String | No | |
adInstructions
|
String | No | Ad instructions from the advertiser |
publisherInfo
|
String | No | Internal notes about the ad only seen by the publisher. |
salesRepIds
|
String | No | A comma-separated list of user IDs that represents the publisher sales representatives for the ad. |
adRate
|
Float | No | A money value which represents the ad's rate cost. |
netCost
|
Float | No | A money value which represents the ad's net cost. |
folioNumber
|
String | No | The intended folio number of the ad. This does not dictate true layout placement and is only a suggested position. Default is empty. |
categoryId
|
Int | No |
A system category ID, must be from a category already present in the system. See Publication.addAdCategory function. |
sectionId
|
Int | No |
A system section ID, must be from a publication section already present in the system. See Publication.addSection function. |
adSpecId
|
Int | No |
An ad size (spec) ID. See AdSpec.getAdSpecList function. |
adSpecCode
|
String | No | The ad size SMA code you wish to use. NOTE: Ad sizes can only be edited for reservations without materials or for ads that have rejected materials. Editing the ad spec value will move the ad to the clipboard in all Virtual Publisher plans on which it is placed. |
positionTagIds
|
String | No | A comma-separated list of position tag IDs. |
positionTagCodes
|
String | No | A comma-separated list of position tag codes. |
positionTagNames
|
String | No | A comma-separated list of position tag names. |
brand
|
String | No | Brand information |
externalPosition
|
String | No | Also referred to as Requested Position. |
assignmentUserId
|
Int | No | The ID for the user who is assigned to the ad. |
custom_[internal name]
|
String | No |
Custom metadata fields. Format: custom_[internal name] where internal name matches the configuration in SendMyAd's Manage Custom Metadata Options screen. Example: A custom field with an internal name of "salesNumber" would be referenced by custom_salesNumber . |
Response
{"success":"1","msg":"","data":{"key1":"value1","key2":"value2",...}
editIssue
assigns an issue to an existing ad
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "editIssue" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Yes | The unique identifier for the ad. |
publicationId
|
Int | Yes | The publicationId for the issue |
issueId
|
Int | 1 issue identifier is required | A valid issueId for the publication. |
issueCode
|
String | 1 issue identifier is required | An SMA code which matches a running issue. |
Response
{"success":"0 | 1","msg":"","issueId":1234}
archiveAd
removes an ad or reservation
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "archiveAd" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Yes | The unique identifier for the ad. |
publicationId
|
Int | Yes | The publicationId for the issue |
issueId
|
Int | Yes | A valid issueId for the publication. |
Response
{"success":"0 | 1","msg":""}
unarchiveAd
restores an ad or reservation
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "unarchiveAd" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Yes | The unique identifier for the ad. |
Response
{"success":"0 | 1","msg":""}
getStatusList
gets a list of available ad status IDs and codes
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getStatusList" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
Response
{"success":"0 | 1","msg":"","data":[{"id":"150","name":"Materials Ok"},{...}]}
getStatus
gets a list of available ad status IDs and codes
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getStatus" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Yes | The unique identifier for the ad |
Response
{"success":"0 | 1","msg":"","status":"statusId"}
getAsset
retrieves link for an asset type of given process
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAsset" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Yes | The unique identifier for the ad |
assetType
|
String | Yes | The assetType variable tells the api which asset you want to retrieve for the ad. Allowed values: "original", "final", "receipt", "preview", "thumbnail" |
Response
{"success":"0 | 1","msg":"","linkToAsset":"https://<LINK_TO_ASSET>"}
updatePrintAd
updates a metadata value for an ad. Deprecated method, use editAd
(above) instead.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "updatePrintAd" The action variable tells the api what you want to do. |
className
|
String | Yes | "Ad" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried |
processId
|
String | Yes | The unique identifier for the ad |
key
|
String | Yes | The metadata field identifier |
value
|
String | Yes | The URL-encoded value to be updated. |
Response
{"success":"0 | 1","msg":""}
The DigitalAd
Class
This class contains ways to create digital ad reservations in the system.
Available Actions
reserveAdSpace
creates a digital ad space reservation to be fulfilled by an ad sender.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "reserveAdSpace" The action variable tells the api what you want to do. |
className
|
String | Yes | "Reservation" The className variable tells the api where the action is located. |
action
|
String | Yes | "reserveAdSpace" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher you wish to send the space reservation to, must have been granted access or be the same user company. |
mediaProfileId
|
Int | Yes | The mediaProfileId is required and can be found in the details of the media profiles list of your site or call getWebMediaProfilesList function for results. Note: The chosen mediaProfile must be turned on for advertisers in order for this option to work. |
adSpecId
|
Int | 1 ad unit identifier is required | The Digital Ad Unit id (from Media Profile) you wish to use. |
adSpecCode
|
String | 1 Digital ad unit identifier is required | The Digital Ad Unit code (from Media Profile) you wish to use. |
adSpecName
|
String | 1 ad unit identifier is required | The Digital Ad Unit name (from Media Profile) you wish to use. |
publicationId
|
Int | No | The publications SMA id key you wish to use, publicationId over rides publicationCode and publicationname. Publication Id keys can be obtained through the publication class. |
publicationCode
|
String | No | The publication code you wish to use, publicationCode over rides publicationname |
publicationName
|
String | No | The publication name you wish to use, must match a publication in the sytem owned by the publisher. |
notify
|
String | No | 'true' or 'false'. Notify the assignment user |
notifyOnDate
|
String | No | Date format: MM/DD/YYYY. Notify the assignment user on this date instead of immediately |
notifyEndDate
|
String | No | Date format: MM/DD/YYYY. Notify the assignment user up to this date. Specify the interval of days for the reNotifyForDays parameter |
reNotifyForDays
|
Int | No | Schedule notifications to the assignment user, from now until the notification end date, at the interval of days specified with this value. |
assignmentUserId
|
Int | Yes | A valid SMA userId over rides assignmentUserEmail, assignmentUserCompanyId, assignmentUserCompany, and assignmentUserCompanyCode. Assignment user will be the advertiser user who is assigned to the ad. They will receive all notifications for the advertiser. |
assignmentUserEmail
|
String | No | A legal SMA user Email, overrides assignmentUserCompanyId, assignmentUserCompany, and assignmentUserCompanyCode |
assignmentUserCompanyId
|
String | No | A legal SMA user companyId (termId) , over rides assignmentUserCompany, and assignmentUserCompanyCode |
assignmentUserCompanyCode
|
String | No | A legal SMA user company code, overrides assignmentUserCompany |
assignmentUserCompany
|
String | No | A legal SMA user company name |
issueId
|
Int | No | A valid issueId for the publication. |
issueCode
|
String | No | a SMA code which matches a running issue. Note, publisher must have issues and publications for digital ads turned on for this to work. |
processId
|
String | No | if a unique processId is not supplied one will be created for you. This should only be created by a machine. |
advertiser / label
|
String | No | This is a label for the ad materials. API accepts either advertiser or label as parameter. |
product
|
String | No | The product label represented in the ad. |
externalId
|
String | No | An external unique identifier supplied by the sending system. Usually used for finding ads by a 3rd party system's id. Default empty |
responseType
|
String | No | Default xml , alternative option is "json". Allows system to send alternate response object type. All newly created api functions will default to JSON. |
adInstructions
|
String | No | Ad instructions from the advertiser |
brand
|
String | No | Brand information |
runFrom
|
String | No | mm/dd/yyyy. The start run date of the ad. |
runTo
|
String | No | mm/dd/yyyy. The end run date of the ad. |
clickUrl
|
String | No | The url executed when the advertisement is clicked. |
shortDescription
|
String | No | An optional description for the ad. |
custom_[internal name]
|
String | No |
Custom metadata fields. Format: custom_[internal name] where internal name matches the configuration in SendMyAd's Manage Custom Metadata Options screen. Example: A custom field with an internal name of "salesNumber" would be referenced by custom_salesNumber . |
Response
<results>
<success>true/false</success>
<error>Each error that occurred as a text description. Each error will generate a new xml error tag.</error>
<processId>A unique string which represents the ad.</processId>
</results>
getAdInfo
queries an ad by its unique processId to list available information known about the ad.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAdInfo" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Required if externalId is not supplied. | The unique identifier for the ad. |
externalId
|
String | Required if processId is not supplied | The unique external identifier for the ad. |
Response
{"success":"1","msg":"","data":{"key1":"value1","key2":"value2",...}
getAdsByChanged
returns an ad list in json by last updated in number of minutes.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAdsByChanged" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
minutes
|
String | Yes | A number of minutes you wish to check by last changed. Must be between 1 and 44640. |
Response
{
"success":1,
"rowCount":4,
"data":{
"123455":{
"processId":"12342314",
"fileName":"my.jpg",
"mediaProfileName":"My Media Profile",
},
...
}
}
getWebMediaProfilesList
returns a list of mediaProfiles based on provided filters.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getWebMediaProfilesList" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
Response
{
"success":1,
"rowCount":1,
"data":{
"568":{
"mediaProfileId":"568",
"publisherName":"Example Publisher",
...
}
}
}
getAdUnitsList
returns a list of Ad Units for a supplied Media Profile. Necessary for creating a reservation.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAdUnitsList" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
mediaProfileId
|
Int | Yes | The mediaProfileId is required and can be found in the details of the media profiles list of your site or call getWebMediaProfilesList function for results. |
Response
{
"success":1,
"rowCount":10,
"data":{
"123":{
"id":"123",
"adSpecName":"3:1 Rectangle",
"width":"300",
"height":"100",
...
}
}
}
sendAdMaterialsReminder
will take supplied processIds and send out an email reminder to each ad contact.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "sendAdMaterialsReminder" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
processIds
|
String | Yes | This needs to be a comma delimited list of processIds or an url encoded json block of processIds. |
Response
<results>
<success>true/false</success>
<error>Each error that occurred as a text description. Each error will generate a new xml error tag.</error>
<emailsSentCount>The number of emails successfully sent out.</emailsSentCount>
</results>
getRunDates
get all the assigned run dates of an ad by processId.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getRunDates" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher you wish to send the space reservation to, must have been granted access or be the same user company. |
processId
|
String | Yes | The unique identifier for the ad. |
Response
{
"success": 1,
"msg": "List of all assigned run dates",
"data": [
{
"id": "1945",
"runFrom": "2023-03-23 00:00:00",
"runTo": "2023-04-23 00:00:00"
},
{
"id": "1946",
"runFrom": "2023-02-23 00:00:00",
"runTo": "2023-03-23 00:00:00"
},
...
]
}
addRunDates
add new run dates to an ad.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addRunDates" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher you wish to send the space reservation to, must have been granted access or be the same user company. |
processId
|
String | Yes | The unique identifier for the ad. |
runDates
|
Json Array | Yes | Json array of the run dates to be assigned to the ad. Dates should be provided in mm-dd-yyyy format. Eg., [{"runFrom": "mm-dd-yyyy","runTo": "mm-dd-yyyy"},{"runFrom": "mm-dd-yyyy","runTo": "mm-dd-yyyy"},...] |
Response
{
"success": 1,
"msg": "Run dates assigned successfully",
"data": [
{
"id": "1962",
"runFrom": "2023-03-23 00:00:00",
"runTo": "2023-04-23 00:00:00"
},
{
"id": "1961",
"runFrom": "2023-03-23 00:00:00",
"runTo": "2023-04-23 00:00:00"
}
]
}
cancelRunDate
cancel an assigned run date to an ad.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "cancelRunDate" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher you wish to send the space reservation to, must have been granted access or be the same user company. |
processId
|
String | Yes | The unique identifier for the ad. |
runDateId
|
int | Yes | Id of the run date that will be cancelled. |
Response
{"success":1,"msg":"Run date cancelled successfully"}
editAd
edits an ad by processId using a pre-defined set of fields.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "editAd" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Yes | The unique identifier for the ad. |
|
At least one of the following fields is required | ||
materialsId
|
String | No | |
headline
|
String | No | The headline represented in the ad. |
publicationId
|
Int | No | The publications SMA id key you wish to use, publicationId over rides publicationCode and publicationname. Publication Id keys can be obtained through the publication class. |
publicationCode
|
String | No | The publication code you wish to use, publicationCode over rides publicationname |
publicationName
|
String | No | The publication name you wish to use, must match a publication in the sytem owned by the publisher. |
issueId
|
Int | No | A valid issueId for the publication. |
issueCode
|
String | No | a SMA code which matches a running issue. Note, publisher must have issues and publications for digital ads turned on for this to work. |
adSpecId
|
Int | 1 ad spec identifier is required | The ad size SMA id you wish to use. |
adSpecCode
|
String | 1 ad spec identifier is required | The ad size SendMyAd code you wish to use. |
advertiser / label
|
String | No | This is a label for the ad materials. API accepts either advertiser or label as parameter. |
adInstructions
|
String | No | Ad instructions from the advertiser |
brand
|
String | No | Brand information |
runDateId
|
int | Yes if runFrom and runTo dates are provided | Id of the run date that will be updated |
runFrom
|
String | No | mm/dd/yyyy. The start run date of the ad. |
runTo
|
String | No | mm/dd/yyyy. The end run date of the ad. |
clickUrl
|
String | No | The url executed when the advertisement is clicked. |
assignmentUserId
|
Int | Yes | A valid SMA userId over rides assignmentUserEmail, assignmentUserCompanyId, assignmentUserCompany, and assignmentUserCompanyCode. Assignment user will be the advertiser user who is assigned to the ad. They will receive all notifications for the advertiser. |
product
|
String | No | The product label represented in the ad. |
shortDescription
|
String | No | An optional description for the ad. |
bookingNumber
|
String | No | An optional description for the ad. |
externalId
|
String | No | An external unique identifier supplied by the sending system. |
custom_[internal name]
|
String | No |
Custom metadata fields. Format: custom_[internal name] where internal name matches the configuration in SendMyAd's Manage Custom Metadata Options screen. Example: A custom field with an internal name of "salesNumber" would be referenced by custom_salesNumber . |
Response
{"success":1,"msg":"Values for fieldName1, fieldName2,... fields updated for ad processId."}
getAsset
retrieves all asset links of the given process
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAsset" The action variable tells the api what you want to do. |
className
|
String | Yes | "DigitalAd" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher that owns the ad to be queried. |
processId
|
String | Yes | The unique identifier for the ad |
Response
{
"success":1,"msg":"",
"assets":[
{
"label":"Original File",
"linkToAsset":"https://<LINK_TO_ASSET>",
"type":"<ASSET_TYPE>"
},
{
"label":"Preview File",
"linkToAsset":"https://<LINK_TO_ASSET>",
"type":"<ASSET_TYPE>"
}
]
}
The AdCreator
Class
This class contains ways to create Ad Creator reservations in the system.
Available Actions
reserveAdSpace
creates an AdCreator space reservation to be fulfilled by an ad sender.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "reserveAdSpace" The action variable tells the api what you want to do. |
className
|
String | Yes | "AdCreator" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher you wish to send the space reservation to, must have been granted access or be the same user company. |
publicationId
|
Int | No | The publications SMA id key you wish to use, publicationId over rides publicationCode and publicationname. Publication Id keys can be obtained through the publication class. |
publicationCode
|
String | No | The publication code you wish to use, publicationCode over rides publicationname |
publicationName
|
String | No | The publication name you wish to use, must match a publication in the sytem owned by the publisher. |
adSpecId
|
Int | 1 ad spec identifier is required | The ad size SMA id you wish to use. |
adSpecCode
|
String | 1 ad spec identifier is required | The ad size SMA code you wish to use. |
adSpecName
|
String | 1 ad spec identifier is required | The ad size SMA name you wish to use. |
notify
|
String | No | 'true' or 'false'. Notify the assignment user |
notifyOnDate
|
String | No | Date format: MM/DD/YYYY. Notify the assignment user on this date instead of immediately |
reNotifyForDays
|
Int | No | Schedule notifications to the assignment user, from now until the issue materials due date, at the interval of days specified with this value. |
assignmentUserId
|
Int | Yes | A valid SMA userId over rides assignmentUserEmail, assignmentUserCompanyId, assignmentUserCompany, and assignmentUserCompanyCode. Assignment user will be the advertiser user who is assigned to the ad. They will receive all notifications for the advertiser. |
assignmentUserEmail
|
String | No | A legal SMA user Email, overrides assignmentUserCompanyId, assignmentUserCompany, and assignmentUserCompanyCode |
assignmentUserCompanyId
|
String | No | A legal SMA user companyId (termId) , over rides assignmentUserCompany, and assignmentUserCompanyCode |
assignmentUserCompanyCode
|
String | No | A legal SMA user company code, overrides assignmentUserCompany |
assignmentUserCompany
|
String | No | A legal SMA user company name |
issueId
|
Int | No | A valid issueId for the publication. |
issueCode
|
String | No | a SMA code which matches a running issue. Note, publisher must have issues and publications for digital ads turned on for this to work. |
processId
|
String | No | if a unique processId is not supplied one will be created for you. This should only be created by a machine. |
product
|
String | No | The product label represented in the ad. |
bookingNumber
|
String | No | A booking number which will be tracked on the ad material. |
advertiser / label
|
String | No | This is a label for the ad materials. API accepts either advertiser or label as parameter. |
headline
|
String | No | The headline represented in the ad. |
folioNumber
|
String | No | The intended folio number of the ad. This does not dictate true layout placement and is only a suggested position. Default is empty. |
advertiserNumber
|
String | No | A unique ad identifier supplied from the advertiser's system or workflow. Possibly adId. Default is empty. |
publisherInfo
|
String | No | Publisher supplied information about the ad. Usually not usable for advertisers. Default is empty. |
productUrl
|
String | No | A web url which represents the product for the advertisement. Default empty |
adRate
|
Float | No | A float money value which represents the ad's rate cost. |
netCost
|
Float | No | A float money value which represents the ad's net cost. |
externalId
|
String | No | An external unique identifier supplied by the sending system. Usually used for finding ads by a 3rd party system's id. Default empty |
responseType
|
String | No | Default xml , alternative option is "json". Allows system to send alternate response object type. All newly created api functions will default to JSON. |
adInstructions
|
String | No | Ad instructions from the advertiser |
brand
|
String | No | Brand information |
custom_[internal name]
|
String | No |
Custom metadata fields. Format: custom_[internal name] where internal name matches the configuration in SendMyAd's Manage Custom Metadata Options screen. Example: A custom field with an internal name of "salesNumber" would be referenced by custom_salesNumber . |
Response
<results>
<success>true/false</success>
<error>Each error that occurred as a text description. Each error will generate a new xml error tag.</error>
<processId>A unique string which represents the ad.</processId>
</results>
The AdSpec
Class
This class contains ways to get ad specification (size) information in the system.
Available Actions
getAdSpecList
return a list of active ad sizes by publication.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAdSpecList" The action variable tells the api what you want to do. |
className
|
String | Yes | "AdSpec" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
publicationId
|
String | Yes | The unique identifier for the publication. |
publicationCode
|
String | Required if publicationId or publicationCode not supplied | The unique code for the publication. |
publicationName
|
String | Required if publicationId or publicationCode not supplied | The name of the publication. |
adCreatorOnly
|
Int | No | 0 to include all ad sizes. 1 to limit the results to only ad sizes used for Ad Creator |
includeSpreadSides
|
Int | No | SendMyAd automatically creates hidden ad sizes for spreads to hold the left and right sides after splitting. Setting this option to 1 will include these internal ad sizes. If this parameter is omitted or set to 0, only the user-defined spread sizes will be included in the list. |
Response
{
"success":1,
"rowCount":16,
"data":{
"216":{
"adSpecId":"216",
"adSpecName":"Full Page",
"adSpecCode":"FP",
...
}
add
creates an ad size for the publication.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "add" The action variable tells the api what you want to do. |
className
|
String | Yes | "AdSpec" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
publicationId
|
String | Yes | The unique identifier for the publication. |
publicationCode
|
String | Required if publicationId or publicationCode not supplied | The unique code for the publication. |
publicationName
|
String | Required if publicationId or publicationCode not supplied | The name of the publication. |
name
|
String | Yes | The name of the ad size. |
units
|
String | Yes | It can be "in", "mm", "pt". It is the unit of trim / bleed / safety sizes. |
trimWidth
|
Float | Yes | A float value which represents the ad spec's trim width. |
trimHeight
|
Float | Yes | A float value which represents the ad spec's trim height. |
adSpecBleed
|
Float | No | A float value which represents the ad spec's bleed. |
safetyLeft
|
Float | No | A float value which represents the ad spec's safety left. |
safetyRight
|
Float | No | A float value which represents the ad spec's safety right. |
safetyTop
|
Float | No | A float value which represents the ad spec's safety top. |
safetyBottom
|
Float | No | A float value which represents the ad spec's safety bottom. |
autoAddAdSpecDeliveryFilters
|
Int | No | It can be 0 or 1. Default is 1. This will add to all SendMyAd delivery destinations to the ad size. |
preflightSize
|
Int | No | It can be 0 or 1. Default is 1. 0 means it creates an ad specification that bypasses preflight size checking. |
Response
{
"success":1,
"rowCount":16,
"data":{
"216":{
"adSpecId":"216",
"adSpecName":"Full Page",
"adSpecCode":"FP",
...
}
The Company
Class
This class contains ways to create advertiser and agency companies associated with a publisher.
Available Actions
addAgencyCompany
creates a new agency company and links it to a publisher.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addAgencyCompany" The action variable tells the api what you want to do |
className
|
String | Yes | "Company" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company |
name
|
String (255) | Yes | The name of the company |
code
|
String (12) | No | The code of the company |
address
|
String (255) | No | The address line 1 of the company |
address2
|
String (255) | No | The address line 2 of the company |
city
|
String (255) | No | The city of the company |
state
|
String (4) | No | The 2 digit state code of the company |
country
|
String (4) | No | The 3 digit country code of the company |
zip
|
String (11) | No | The zip/postal code of the company |
phone
|
String (12) | No | The phone number of the company |
fax
|
String (12) | No | The fax number of the company |
website
|
String (255) | No | The web url the company |
Response
{"success":1,"msg":""}
addAdvertiserCompany
creates a new advertiser company and links it to a publisher.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addAdvertiserCompany" The action variable tells the api what you want to do |
className
|
String | Yes | "Company" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company |
name
|
String (255) | Yes | The name of the company |
code
|
String (12) | No | The code of the company |
address
|
String (255) | No | The address line 1 of the company |
address2
|
String (255) | No | The address line 2 of the company |
city
|
String (255) | No | The city of the company |
state
|
String (4) | No | The 2 digit state code of the company |
country
|
String (4) | No | The 3 digit country code of the company |
zip
|
String (11) | No | The zip/postal code of the company |
phone
|
String (12) | No | The phone number of the company |
fax
|
String (12) | No | The fax number of the company |
website
|
String (255) | No | The web url the company |
Response
{"success":1,"msg":""}
editCompany
allows editing of company information if the API user has been granted that right.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "editCompany" The action variable tells the api what you want to do |
className
|
String | Yes | "Company" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company |
companyId
|
Int | Yes | The ID of the company to be edited |
|
At least one of the following are required | ||
name
|
String (255) | No | The name of the company |
code
|
String (12) | No | The code of the company |
address
|
String (255) | No | The address line 1 of the company |
address2
|
String (255) | No | The address line 2 of the company |
city
|
String (255) | No | The city of the company |
state
|
String (4) | No | The 2 digit state code of the company |
country
|
String (4) | No | The 3 digit country code of the company |
zip
|
String (11) | No | The zip/postal code of the company |
phone
|
String (12) | No | The phone number of the company |
fax
|
String (12) | No | The fax number of the company |
website
|
String (255) | No | The web url the company |
Response
{"success":1,"msg":""}
checkCompanyExists
checks if an advertiser or agency company exists based on the supplied company name or code.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "checkCompanyExists" The action variable tells the api what you want to do |
className
|
String | Yes | "Company" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company |
companyName
|
String (255) | This or the company code is required | The name of the company |
companyCode
|
String (12) | This or the company name is required | The code of the company. |
Response
{"success":1,"msg":"", "companyId":"123"}
getAdvertisersList
returns a list of all the advertiser companies associated with this publisher.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAdvertisersList" The action variable tells the api what you want to do |
className
|
String | Yes | "Company" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company |
Response
{
"success":1,
"rowCount":4,
"data":{
["advertiserId":"411","advertiserName": ...]
}
}
getAgenciesList
returns a list of all the agency companies associated with this publisher.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAgencyList" The action variable tells the api what you want to do |
className
|
String | Yes | "Company" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company |
Response
{
"success":1,
"rowCount":3,
"data":{
["agency":"436","agencyName": ...]
}
}
The Publisher
Class
This class contains ways to find information specific to a publisher.
Available Actions
getPrintAdTypeList
returns a list of all print ad types for a given publisher.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getPrintAdTypeList" The action variable tells the api what you want to do. |
className
|
String | Yes | "Publisher" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The publisherCode tells the api what publisher you are trying to connect with. |
Response
{
"success":1,
"rowCount":3,
"data":{
"2":{"name":"House Ad","code":"","description":"","publisherId":"0","id":"2"},
"3":{"name":"PSA","code":"","description":"","publisherId":"0","id":"3"},
"1":{"name":"Supplied Ad","code":"","description":"","publisherId":"0","id":"1"}
}
}
addPrintAdType
adds a print ad type for a given publisher.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addPrintAdType" The action variable tells the api what you want to do. |
className
|
String | Yes | "Publisher" The className variable tells the api where the action is located. |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff. |
publisherCode
|
String | Yes | The code of the publisher for this request. |
name
|
String (255) | Yes | The proposed name of the ad type |
description
|
String (255) | No | The proposed description of the ad type |
code
|
String (12) | No | The proposed code of the ad type |
Response
{
"success":1,
"id":4,
"msg":"Ad type added successfully."
}
The Issue
Class
This class contains ways to find information about and add new issues.
Available Actions
addIssue
adds a new issue for this publication. Note: Our API will recognize most common date formats in your supplied string and convert to a proper date.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addIssue" The action variable tells the api what you want to do |
className
|
String | Yes | "Issue" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher, must have been granted access or be the same user company |
publicationId
|
String | 1 publication identifier is required | The publication SMA id you wish to use, publicationId over rides $publicationCode and $publicationCode overrides $publicationName. |
publicationCode
|
String | 1 publication identifier is required |
The publication code you wish to use, publicationCode over rides publicationName |
publicationName
|
String | 1 publication identifier is required | The publication name you wish to use |
name
|
String (255) | Yes | The name of the issue |
code
|
String (4) | No | The code of the company |
runDate
|
String | No | The issue run date. If not supplied, default will be today. |
materialsDueDate
|
String | No | The ad materials due date: If not supplied, will be today. |
onSaleDate
|
String | No | The issue on sale date. If not supplied will be issue run date. |
shipDate
|
String | No | The issue ship date. If not supplied will be issue run date. |
coverDate
|
String | No | The issue cover date. If not supplied will be issue run date. |
description
|
String (255) | No | A description of the issue. |
Response
{"success":1,"id":2437}
issueExists
checks if an issue exists using a variety of different variables
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "issueExists" The action variable tells the api what you want to do |
className
|
String | Yes | "Issue" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
issueId
|
Int |
If an issueId is not supplied, an issueName , runDate , issueCode or publication identifier will be required.
|
Look for an issue by id. |
name
|
String | No | An issue name string |
runDate
|
String | No | The issue run date formatted mm/dd/yyyy |
code
|
String | No | An SMA code which matches a running issue. |
publicationId
|
Int | Required if issueId not supplied |
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
publicationCode
|
String |
Required if publicationId is not supplied or another publication identifier
|
The publication code which contains the issue |
publicationName
|
String |
Required if publicationId is not supplied or another publication identifier
|
The exact publication name which contains the issue |
Response
{"success":1,"exists":"0 | 1"}
getIssueInfo
returns information about an issue
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getIssueInfo" The action variable tells the api what you want to do |
className
|
String | Yes | "Issue" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request. |
issueId
|
Int |
If an issueId is not supplied, a publication identifier will be required, along with the issueName or runDate .
|
Look for an issue by id. |
name
|
String | No | An issue name string |
runDate
|
String | No | The issue run date formatted mm/dd/yyyy |
code
|
String | No | An SMA code which matches a running issue. |
publicationId
|
Int |
Required if issueId not supplied
|
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
publicationCode
|
String |
Required if publicationId is not supplied or another publication identifier
|
The publication code which contains the issue |
publicationName
|
String |
Required if publicationId is not supplied or another publication identifier
|
The exact publication name which contains the issue |
Response
{
"success":1,
"data":{
"issueId":"2436",
"issueCode":"",
"runDate":"2014-06-16 00:00:00",
...
}
}
getIssueList
returns a list of issues for the specified publication.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getIssueList" The action variable tells the api what you want to do |
className
|
String | Yes | "Issue" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request. |
publicationId
|
Int | Yes |
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
publicationCode
|
String |
Required if publicationId is not supplied or another publication identifier
|
The publication code which contains the issue |
publicationName
|
String |
Required if publicationId is not supplied or another publication identifier
|
The exact publication name which contains the issue |
allIssues
|
Int | No |
0 = (default value if paramater not specified) Return only issues which are in the future and less the 190 days passed run date.1 = Return all issues for publication. |
Response
{
"success":1,
"rowCount":4,
"data":{
"1621":{
"issueId":"1621",
"issueName":"2015",
"issueCode":"ISS2015",
"runDate":"2014-12-19 00:00:00",
...
}
}
}
updateIssue
updates an issue's metadata value
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "updateIssue" The action variable tells the api what you want to do |
className
|
String | Yes | "Issue" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request. |
issueId
|
Int | Issue id or code is required. | Look for an issue by id. This will be used as the key to update issue info. |
code
|
String | Issue id or code is required. | Issue id or code is required. This will be used as the key to update issue info. |
key
|
String | Yes | A known database key. |
value
|
String | Yes | A URL-encoded string to update as the value. |
Response
{"success":1,"msg":"Updated issue successfully."}
The Publication
Class
This class contains ways to find information about publications.
Available Actions
getPublicationList
returns a list of all publications for a given publisher.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getPublicationList" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
includeInactive
|
String | No | Default is to return only active publications. Set to 1 to include inactive publications. |
Response
{
"success":1,
"rowCount":7,
"data":{
"155":{
"publicationId":"155",
"publicationName":"Testing Magazine",
...
}
}
}
getColorProfileList
returns a list of color profiles for the specified publication.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getColorProfileList" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
publicationId
|
String | Yes |
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
publicationCode
|
String |
Required if publicationId is not supplied or another publication identifier
|
The publication code which contains the color profiles |
publicationName
|
String |
Required if publicationId is not supplied or another publication identifier
|
The exact publication name which contains the color profiles |
Response
{
"success":1,
"rowCount":3,
"data":{
"247":{
"colorProfileId":"247",
"colorProfileName":"all warnings",
...
}
}
}
getAdCategoryList
returns a list of ad categories for the specified publication.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getAdCategoryList" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
publicationId
|
String | Yes |
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
publicationCode
|
String |
Required if publicationId is not supplied or another publication identifier
|
The publication code which contains the categories |
publicationName
|
String |
Required if publicationId is not supplied or another publication identifier
|
The exact publication name which contains the categories |
Response
{
"success":1,
"rowCount":3,
"data":{
"247":{
"colorProfileId":"247",
"colorProfileName":"all warnings",
...
}
}
}
getSectionList
returns a list of sections for the specified publication.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getSectionList" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
publicationId
|
String | Yes |
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
publicationCode
|
String |
Required if publicationId is not supplied or another publication identifier
|
The publication code which contains the sections |
publicationName
|
String |
Required if publicationId is not supplied or another publication identifier
|
The exact publication name which contains the sections |
Response
{"success":1,"rowCount":5,"data":{"2":{"sectionId":"2",...}}
addAdCategory
adds a new ad category for this publication.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addAdCategory" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
publicationId
|
String | Yes |
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
publicationCode
|
String |
Required if publicationId is not supplied or another publication identifier
|
The publication code |
publicationName
|
String |
Required if publicationId is not supplied or another publication identifier
|
The exact publication name |
name
|
String (255) | Yes | The proposed name of the ad category |
code
|
String (12) | No | The proposed code of the ad category |
color
|
String (12) | No |
7 or 3 comma delimited values. HEX or comma delimited RGB values (Optional) The proposed bar color of the ad category. Auto generated if none supplied. HTML HEX FORMAT: #FFFFFF |
compDistRuleOn
|
Int (1) | No | Decides if the competitive distance rule is on for this category. Default is off (0). |
compDistRule
|
Int (1000) | No | Decides how far apart in pages an item with the same category must be. Default is (0), which means not on the same page. |
Response
{
"success":1,
"id":809,
"msg":"Ad Category added successfully."
}
addSection
adds a new section for this publication
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addSection" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
publicationId
|
String | Yes |
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
publicationCode
|
String |
Required if publicationId is not supplied or another publication identifier
|
The unique publication code |
publicationName
|
String |
Required if publicationId is not supplied or another publication identifier
|
The exact publication name |
name
|
String (255) | Yes | The proposed name of the section |
color
|
String (7) | No | The proposed bar color of the publication section. Auto generated if none supplied. HTML HEX FORMAT: #FFFFFF |
fontColor
|
String (7) | No | The proposed font color of the publication section. Defaults to white if none supplied. HTML HEX FORMAT: #FFFFFF |
description
|
String (255) | No | The proposed description of the publication section |
Response
{
"success":1,
"id":49,
"msg":"Publication section added successfully."
}
getPositionTagsList
returns a list of all the position tags associated with a publication.
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "getPositionTagsList" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
publicationId
|
String | Yes | The SMA publication ID you wish to use |
Response
{"success":1,"rowCount":5,"data":{"45":{"tagId":"45",...}}
addPositionTag
adds a new position tag for this publication
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addPositionTag" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
publicationId
|
String | Yes |
The SMA publication ID you wish to use, publicationId overrides publicationCode |
name
|
String (255) | Yes | The name of the new position tag |
code
|
String (8) | Yes | The code for the new position tag |
Response
{"success":1,"tagId":342,"msg":"Position tag added successfully."}
editPositionTag
edits a position tag by its ID
Parameters
Name | Type | Required | Description |
---|---|---|---|
action
|
String | Yes | "addPositionTag" The action variable tells the api what you want to do |
className
|
String | Yes | "Publication" The className variable tells the api where the action is located |
apiKey
|
String | Yes | The apiKey allows the api to authenticate you. API keys can be requested from SendMyAd staff |
publisherCode
|
String | Yes | The code of the publisher for this request |
tagId
|
String | Yes |
The SMA publication ID you wish to use, publicationId overrides publicationCode and publicationName |
name
|
String (255) |
Required if code is not passed
|
The new name of the position tag |
code
|
String (8) |
Required if name is not passed
|
The new code for the position tag |
Response
{
"success":1,
"msg":"Position tag 342 edited successfully."
}