eBay Client Alerts APIVersion 777
 

GetPublicAlerts

Retrieves a list of public channel messages.

Note: All methods of the Client Alerts API will be decommisioned on May 31, 2023. The alternative for this API is Platform Notifications, which supports all notification event types supported by Client Alerts API.

For anyone that is not familiar with Platform Notifications, we recommend that you read the Platform Notifications Guide to get started.

See also the reference documentation for this call:



Input

See also Samples.

The box below lists all fields that could be included in the call request. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

Call-specific Input Fields
  ApplicationID.Value = string
  ChannelDescriptor   ChannelDescriptorType
    ChannelID.Value = string
    ChannelType = ChannelTypeCodeType
    EventType = ClientAlertsEventTypeCodeType
    ... more EventType values allowed here ...
  ... more ChannelDescriptor nodes allowed here ...
  LastRequestTime.Value = dateTime

Standard Input Fields

  MessageID.Value = string
Argument Type Occurrence Meaning
Call-specific Input Fields [Jump to standard fields]
ApplicationID.Value string Optional Identifies the requesting application. This is the same as the AppID you use to obtain a Trading API user token, which you include in your GetClientAlertsAuthToken request.
ChannelDescriptor ChannelDescriptorType Required,
repeatable: [1..*]
Provides channel type and ID, and event type.
ChannelDescriptor.ChannelID.Value string Required Identifier of the channel (ItemID).
ChannelDescriptor.ChannelType ChannelTypeCodeType Required Event type of the public channel.

Applicable values:

CustomCode
Reserved for internal or future use.
Item
An item, identified by an ItemID, is a channel whose content, in the form of alerts about events such as price change, can be retrieved using GetPublicAlerts.
ChannelDescriptor.EventType ClientAlertsEventTypeCodeType Required,
repeatable: [1..*]
Identifies the type of event.

Applicable values: See EventType.
LastRequestTime.Value dateTime Optional Set this value to inform the API that your application is not an old internal eBay application.
Standard Input Fields  
MessageID.Value string Optional If you pass a value into the MessageID field in a request, the same value is returned in CorrelationID field in the response. If you're making a lot of calls, you can use this for tracking that a response is returned for every request and to match particular responses to particular requests. (In this case, specify a different value for each request.) You can specify any value that is useful to you.



Output

See also Samples.

The box below lists all fields that might be returned in the response. To learn more about an individual field or its type, click its name in the box (or scroll down to find it in the table below the box).

{
  /* Call-specific Output Fields */
  "Content":
      { /* ChannelContentType */
      "ChannelEvent":
          { /* ClientAlertsEventType */
          "EventType": ClientAlertsEventTypeCodeType,
          "ItemEnded":
              { /* ItemEndedEventType */
              },
          "PriceChange":
              { /* PriceChangeEventType */
              "BidCount.Value": int,
              "EndTime.Value": dateTime,
              "HighBidderUserID.Value": string,
              "ItemID.Value": string,
              "MinimumToBid":
                  { /* AmountType */
                  },
              "ReserveMet.Value": boolean,
              "SellerUserID.Value": string,
              "Timestamp.Value": dateTime
              }
          },
      "ChannelID.Value": string,
      "ChannelType": ChannelTypeCodeType,
      "LastModifiedDate.Value": dateTime
      },

  /* Standard Output Fields */
  "Ack": AckCodeType,

  "Build.Value": string
  "CorrelationID.Value": string,
  "Errors":       { /* ErrorType */       "ErrorClassification": ErrorClassificationCodeType,       "ErrorCode.Value": token,       "ErrorParameters":           { /* ErrorParameterType */           "Value.Value": string           },       "LongMessage.Value": string,       "SeverityCode": SeverityCodeType,       "ShortMessage.Value": string       },
  "Timestamp.Value": dateTime,
  "Version.Value": string, }
Return Value Type Occurrence Meaning
Call-specific Output Fields [Jump to standard fields]
Content ChannelContentType Always,
repeatable: [1..*]
Contains channel ID, channel type and an array of events.
Content.ChannelEvent ClientAlertsEventType Always,
repeatable: [1..*]
Identifies the event, such as a price change, that is the subject of the alert.
Content.ChannelEvent.EventType ClientAlertsEventTypeCodeType Always Type of client alert.

Applicable values: See EventType.
Code so that your app gracefully handles any future changes to this list.
Content.ChannelEvent.ItemEnded ItemEndedEventType Conditionally Sent when seller has used the Trading API call EndItem to end the specified item listing before the date and time at which it would normally end (per the listing duration).
Content.ChannelEvent
  .PriceChange
PriceChangeEventType Conditionally Sent to a user when the price of an item has changed.
Content.ChannelEvent
  .PriceChange.BidCount.Value
int Conditionally The total number of bids the user placed on the item.
Content.ChannelEvent
  .PriceChange.EndTime.Value
dateTime Conditionally Date and time when the listing ended.
Content.ChannelEvent
  .PriceChange.HighBidderUserID.Value
string Conditionally Unique eBay user ID for the user.

Since a bidder's user info is anonymous, this tag will contain the real ID value only for that bidder, and the seller of an item that the user is bidding on. For all other users, the real ID value will be replaced with the anonymous value, according to these rules:

When bidding on items listed on the US site: UserID is replaced with the value "a****b" where a and b are random characters from the UserID. For example, if the UserID = IBidALot, it might be displayed as, "I****A".

Note that in this format, the anonymous bidder ID stays the same for every auction.
Content.ChannelEvent
  .PriceChange.ItemID.Value
string Always Unique ID of the item that is the subject of the alert.
Content.ChannelEvent
  .PriceChange.MinimumToBid
AmountType (double) Conditionally Smallest amount the next bid on the item can be.
Content.ChannelEvent
  .PriceChange.MinimumToBid
CurrencyCodeType Conditionally Smallest amount the next bid on the item can be.

For a list of possible enumeration values, see CurrencyCodeType.
Content.ChannelEvent
  .PriceChange.ReserveMet.Value
boolean Conditionally Indicates whether any bids on this item are greater than the seller's reserve price for the listing (if any).
Content.ChannelEvent
  .PriceChange.SellerUserID.Value
string Conditionally The eBay ID of the seller who listed the item.
Content.ChannelEvent
  .PriceChange.Timestamp.Value
dateTime Always Time of most recent retrieval of data.
Content.ChannelID.Value string Always Identifies the action that is the subject of the alert.
Content.ChannelType ChannelTypeCodeType Always Identifies the channel, such as an item, that is the subject of the alert.

Applicable values:

CustomCode
Reserved for internal or future use.
Item
An item, identified by an ItemID, is a channel whose content, in the form of alerts about events such as price change, can be retrieved using GetPublicAlerts.

Code so that your app gracefully handles any future changes to this list.
Content.LastModifiedDate.Value dateTime Always Specifies the date of the most recent event on the channel.
Standard Output Fields  
Ack AckCodeType Always A token representing the application-level acknowledgement code that indicates the response status (e.g., success). The AckCodeType list specifies the possible values for the Ack field.

Applicable values:

CustomCode
Reserved for internal or future use.
Failure
This value indicates that the call request processing failed.
Success
This value indicates that the call request was processed successfully without any issues.
Warning
This value indicates that the call request was successful, but processing was not without any issues. These issues can be checked in the Errors container, that will also be returned when one or more known issues occur with the call request.

(Not all values in AckCodeType apply to this field.)

Code so that your app gracefully handles any future changes to this list.
Build.Value string Always This refers to the particular software build that eBay used when processing the request and generating the response. This includes the version number plus additional information. eBay Developer Support may request the build information when helping you resolve technical issues.
CorrelationID.Value string Conditionally If you pass a value in MessageID in a request, we will return the same value in CorrelationID in the response. You can use this for tracking that a response is returned for every request and to match particular responses to particular requests. Only returned if MessageID was used.
Errors ErrorType Conditionally,
repeatable: [0..*]
A list of application-level errors or warnings (if any) that were raised when eBay processed the request.

Application-level errors occur due to problems with business-level data on the client side or on the eBay server side. For example, an error would occur if the request contains an invalid combination of fields, or it is missing a required field, or the value of the field is not recognized. An error could also occur if eBay encountered a problem in our internal business logic while processing the request.

Only returned if there were warnings or errors.
Errors.ErrorClassification ErrorClassificationCodeType Conditionally API errors are divided between two classes: system errors and request errors.

Applicable values:

CustomCode
Reserved for internal or future use.
RequestError
An error has occurred either as a result of a problem in the sending application or because the application's end-user has attempted to submit invalid data (or missing data). In these cases, do not retry the request. The problem must be corrected before the request can be made again. If the problem is due to something in the application (such as a missing required field), the application must be changed. If the problem is a result of end-user data, the application must alert the end-user to the problem and provide the means for the end-user to correct the data. Once the problem in the application or data is resolved, resend the request to eBay with the corrected data.
SystemError
Indicates that an error has occurred on the eBay system side, such as a database or server down. An application can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form.

Code so that your app gracefully handles any future changes to this list.

See Errors by Number.

Errors.ErrorCode.Value token Conditionally A unique code that identifies the particular error condition that occurred. Your application can use error codes as identifiers in your customized error-handling algorithms.

See Errors by Number.

Errors.ErrorParameters ErrorParameterType Conditionally,
repeatable: [0..*]
Some warning and error messages return one or more variables that contain contextual information about the error. This is often the field or value that triggered the error. You can usually predict where these will occur by looking at the "replaceable_value" indicators in our Errors by Number page.

See Errors by Number.

Errors.ErrorParameters.Value.Value string Conditionally This is the value of the request parameter noted in the ParamID attribute. So, if the ParamID value was ItemID, the value in this field would be the actual value of that ItemID.
Errors.ErrorParameters.ParamID string Conditionally Some warning and error messages return one or more variables that contain contextual information about the error. This is often the field or value that triggered the error. You can usually predict where these will occur by looking at the "replaceable_value" indicators in our Errors by Number page.
Errors.LongMessage.Value string Conditionally A more detailed description of the condition that raised the error.

See Errors by Number.

Errors.SeverityCode SeverityCodeType Conditionally Indicates whether the error caused the request to fail.

If the request fails and the source of the problem is within the application (such as a missing required element), please change the application before you retry the request. If the problem is due to end-user input data, please alert the end-user to the problem and provide the means for them to correct the data. Once the problem in the application or data is resolved, you can attempt to re-send the request to eBay.

If the source of the problem is on eBay's side, you can retry the request as-is a reasonable number of times (eBay recommends twice). If the error persists, contact Developer Technical Support. Once the problem has been resolved, the request may be resent in its original form.

When a warning occurs, the error is returned in addition to the business data. In this case, you do not need to retry the request (as the original request was successful). However, depending on the cause or nature of the warning, you might need to contact either the end user or eBay to effect a long term solution to the problem to prevent it from reoccurring in the future.

Applicable values:

CustomCode
Reserved for internal or future use.
Error
The request that triggered the error was not processed successfully. When a serious application-level error occurs, the error is returned instead of the business data.
Warning
The request was processed successfully, but something occurred that may affect your application or the user. For example, eBay may have changed a value the user sent in. In this case, eBay returns a normal, successful response and also returns the warning.

Code so that your app gracefully handles any future changes to this list.

See:
    Errors by Number
    Error Handling

Errors.ShortMessage.Value string Conditionally A brief description of the condition that raised the error.

See Errors by Number.

Timestamp.Value dateTime Always This value represents the date and time when eBay processed the request. The time zone of this value is GMT and the format is the ISO 8601 date and time format (YYYY-MM-DDTHH:MM:SS.SSSZ). See the "dateTime" type for information about this time format and converting to and from the GMT time zone.
Version.Value string Always The version of the API call that eBay used to process the request.

Note: Note that some calls are not always updated with each WSDL release, so it is possible that version numbers will differ by API call.
If a field in the response returns the token "CustomCode", it usually means that the field is a code type (a token or enumeration), and that in your request URL (or HTTP header) you specified a version that is older than the version in which the token was added to the call.

See Schema Versioning Strategy.



Samples

New to making API calls? Please see Making a Call.

Note: Some item IDs, user IDs, or other data in these samples might no longer be active on eBay. If necessary, you can substitute current eBay data in your requests.

Sample: Basic

Retrieves public alerts (such as price changes) for a specified channel (such as an item).

Description

This sample shows a price change alert.

Input

Returns a public alert. Because public alerts are only about events publicly available on the eBay site, and returns only public information, it requires only AppID and an identifier for the item.

URL format. See also the non-wrapped version of this URL.

http://clientalerts.ebay.com/ws/ecasvc/ClientAlerts?
   ChannelDescriptor(0).ChannelType=Item&
   ChannelDescriptor(0).ChannelID=3**********5&
   ChannelDescriptor(0).EventType(0)=ItemEnded&
   ChannelDescriptor(1).ChannelType=Item&
   ChannelDescriptor(1).ChannelID=1**********7&
   ChannelDescriptor(1).EventType(0)=ItemEnded&
   Version=643&
   callname=GetPublicAlerts

Output

The payload of this response includes the name of the alert and the item ID.

JSON format.
{
   "Timestamp":"2009-11-20T20:58:15.298Z",
   "Ack":"Success",
   "Build":"E643_CORE_BUNDLED_10272615_R1",
   "Version":"643",
   "Content":[
      {
         "ChannelID":"3**********5",
         "ChannelType":"Item",
         "ChannelEvent":[
            {
               "EventType":"ItemEnded",
               "ItemEnded":{
                  "EventType":"ItemEnded",
                  "Timestamp":"2009-11-20T20:46:10.956Z",
                  "ItemID":"3**********5",
                  "BidCount":0,
                  "SellerUserID":"e******y",
                  "EndTime":"2009-11-20T20:45:00.000Z",
                  "CurrentPrice":{
                     "Value":4.69,
                     "CurrencyID":"USD"
                  },
                  "Title":"SKIN CASE + SCREEN COVER for IPOD TOUCH iTOUCH 8GB 16GB",
                  "Quantity":1
               }
            }
         ],
         "LastModifiedDate":"2009-11-20T20:46:11.000Z"
      },
      {
         "ChannelID":"1**********7",
         "ChannelType":"Item",
         "ChannelEvent":[
            {
               "EventType":"ItemEnded",
               "ItemEnded":{
                  "EventType":"ItemEnded",
                  "Timestamp":"2009-11-20T20:57:48.326Z",
                  "ItemID":"1**********7",
                  "BidCount":25,
                  "SellerUserID":"s*******2",
                  "EndTime":"2009-11-20T20:57:38.000Z",
                  "CurrentPrice":{
                     "Value":232.5,
                     "CurrencyID":"USD"
                  },
                  "Title":"3rd Generation 32gb ipod touch BARELY USED",
                  "Quantity":1
               }
            }
         ],
         "LastModifiedDate":"2009-11-20T20:57:48.000Z"
      }
   ]
}



Change History

Change Date Description
569
2008-06-11
  • (added) New call.