Online ora  

/v1/infractions/

Private user-infraction reporting, staff adjudication and bounty administration.
GET

/v1/infractions/get_bounty_estimate

#
Estimate the maximum USD bounty for a signed-in reporter using the current type, reported user's penalty permission and reporter's bounty rate. Assumes a full contribution share; staff decides the actual outcome and may award no bounty. Does not create a report or financial entry.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
typeID int Sì — Active infraction type.
userAlias string Sì — Reported user's alias. Self-reporting is not allowed.
incidentDate string No "" Incident date in YYYY-MM-DD format; empty uses today for the estimate until a date is selected.
subjectTransactionSource string No "" Required for transaction-based types: transaction or custom_article.
subjectTransactionID int No 0 Required canonical transaction ID for transaction-based types.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/infractions/get_bounty_estimate' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'typeID={{typeID}}' \
  --data-urlencode 'userAlias={{userAlias}}' \
  --data-urlencode 'incidentDate={{incidentDate}}' \
  --data-urlencode 'subjectTransactionSource={{subjectTransactionSource}}' \
  --data-urlencode 'subjectTransactionID={{subjectTransactionID}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$infractions_get_bounty_estimate_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.amountCentsinteger Sì
$.oneOf[0].allOf[1].Payload.currency = "USD" Sì
$.oneOf[0].allOf[1].Payload.formattedAmountstring Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/get_bounty_estimate",
    "RequestUserAlias": "example-user",
    "Payload": {
        "amountCents": 0,
        "currency": "USD",
        "formattedAmount": "synthetic-example"
    }
}
Documentazione dell’endpoint leggibile dalle macchine
GET

/v1/infractions/get_my_reports

#
Get only reports submitted by the acting user, including when the caller is staff. Reports against the caller are excluded. Merged reports retain their private chat and use the current case status and classification.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
start int No 0 Non-negative offset; negative values use zero.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/infractions/get_my_reports' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'start={{start}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$infractions_get_my_reports_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.reportsarray Sì
$.oneOf[0].allOf[1].Payload.reports[]object No
$.oneOf[0].allOf[1].Payload.reports[].reportIDinteger Sì
$.oneOf[0].allOf[1].Payload.reports[].caseIDinteger Sì
$.oneOf[0].allOf[1].Payload.reports[].reportedUserIDinteger Sì
$.oneOf[0].allOf[1].Payload.reports[].typeNamestring Sì
$.oneOf[0].allOf[1].Payload.reports[].createdDatestring Sì
$.oneOf[0].allOf[1].Payload.reports[].statusstring ["Open","Confirmed","Warning","Rejected","Merged"] Sì
$.oneOf[0].allOf[1].Payload.reports[].chatIDinteger Sì
$.oneOf[0].allOf[1].Payload.startinteger Sì
$.oneOf[0].allOf[1].Payload.hasMoreboolean Sì
$.oneOf[0].allOf[1].Payload.nextStart Sì
$.oneOf[0].allOf[1].Payload.nextStart.anyOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.nextStart.anyOf[1]null Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/get_my_reports",
    "RequestUserAlias": "example-user",
    "Payload": {
        "reports": [],
        "start": 0,
        "hasMore": false,
        "nextStart": 0
    }
}
Documentazione dell’endpoint leggibile dalle macchine
GET

/v1/infractions/get_options

#
Get reportable types or staff configuration, numeric permissions and audit history.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
admin bool No false Include inactive types and administration data; requires RefundAppointments.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/infractions/get_options' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'admin={{admin}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$infractions_get_options_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.typesarray Sì
$.oneOf[0].allOf[1].Payload.types[]object No
$.oneOf[0].allOf[1].Payload.types[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.types[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.types[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.types[].Slugstring Sì
$.oneOf[0].allOf[1].Payload.types[].Statusstring ["Draft","Active","Retired"] Sì
$.oneOf[0].allOf[1].Payload.types[].SortOrderDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.types[].SortOrder.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.types[].SortOrder.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.types[].CurrentVersionID Sì
$.oneOf[0].allOf[1].Payload.types[].CurrentVersionID.anyOf[0]DatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.types[].CurrentVersionID.anyOf[0].oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.types[].CurrentVersionID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.types[].CurrentVersionID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.types[].CreatedDatestring Sì
$.oneOf[0].allOf[1].Payload.types[].VersionNumberDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.types[].VersionNumber.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.types[].VersionNumber.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.types[].configobject Sì
$.oneOf[0].allOf[1].Payload.types[].config.namestring Sì
$.oneOf[0].allOf[1].Payload.types[].config.descriptionstring Sì
$.oneOf[0].allOf[1].Payload.types[].config.evidenceGuidancestring Sì
$.oneOf[0].allOf[1].Payload.types[].config.subjectstring ["seller","transaction","listing"] Sì
$.oneOf[0].allOf[1].Payload.types[].config.referenceRequired Sì
$.oneOf[0].allOf[1].Payload.types[].config.referenceRequired.oneOf[0]boolean Sì
$.oneOf[0].allOf[1].Payload.types[].config.referenceRequired.oneOf[1]integer [0,1] Sì
$.oneOf[0].allOf[1].Payload.types[].config.penaltyModestring ["warning","fixed","annual_sales","transaction_amount"] Sì
$.oneOf[0].allOf[1].Payload.types[].config.penaltyPermissionstring Sì
$.oneOf[0].allOf[1].Payload.types[].config.bountyEnabled Sì
$.oneOf[0].allOf[1].Payload.types[].config.bountyEnabled.oneOf[0]boolean Sì
$.oneOf[0].allOf[1].Payload.types[].config.bountyEnabled.oneOf[1]integer [0,1] Sì
$.oneOf[0].allOf[1].Payload.types[].config.bountyBasisPointsinteger Sì
$.oneOf[0].allOf[1].Payload.types[].config.buyerPosingAllowed Sì
$.oneOf[0].allOf[1].Payload.types[].config.buyerPosingAllowed.oneOf[0]boolean Sì
$.oneOf[0].allOf[1].Payload.types[].config.buyerPosingAllowed.oneOf[1]integer [0,1] Sì
$.oneOf[0].allOf[1].Payload.types[].config.translations Sì
$.oneOf[0].allOf[1].Payload.types[].config.translations.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.types[].config.translations.anyOf[0].*object No
$.oneOf[0].allOf[1].Payload.types[].config.translations.anyOf[0].*.namestring Sì
$.oneOf[0].allOf[1].Payload.types[].config.translations.anyOf[0].*.descriptionstring Sì
$.oneOf[0].allOf[1].Payload.types[].config.translations.anyOf[0].*.evidenceGuidancestring Sì
$.oneOf[0].allOf[1].Payload.types[].config.translations.anyOf[1] = [] Sì
$.oneOf[0].allOf[1].Payload.types[].config.seedKeystring No
$.oneOf[0].allOf[1].Payload.types[].config.penaltyMultiplier = 3 No
$.oneOf[0].allOf[1].Payload.types[].defaultPenaltyValue Sì
$.oneOf[0].allOf[1].Payload.types[].defaultPenaltyValue.anyOf[0]DatabaseNumber SìNumeric value; MySQL reads can serialize numbers as numeric strings.
$.oneOf[0].allOf[1].Payload.types[].defaultPenaltyValue.anyOf[0].oneOf[0]number Sì
$.oneOf[0].allOf[1].Payload.types[].defaultPenaltyValue.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.types[].defaultPenaltyValue.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.types[].reporterBountyBasisPointsinteger Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfigobject No
$.oneOf[0].allOf[1].Payload.types[].rawConfig.namestring Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.descriptionstring Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.evidenceGuidancestring Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.subjectstring ["seller","transaction","listing"] Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.referenceRequired Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.referenceRequired.oneOf[0]boolean Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.referenceRequired.oneOf[1]integer [0,1] Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.penaltyModestring ["warning","fixed","annual_sales","transaction_amount"] Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.penaltyPermissionstring Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.bountyEnabled Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.bountyEnabled.oneOf[0]boolean Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.bountyEnabled.oneOf[1]integer [0,1] Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.bountyBasisPointsinteger Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.buyerPosingAllowed Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.buyerPosingAllowed.oneOf[0]boolean Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.buyerPosingAllowed.oneOf[1]integer [0,1] Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.translations Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.translations.anyOf[0]object Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.translations.anyOf[0].*object No
$.oneOf[0].allOf[1].Payload.types[].rawConfig.translations.anyOf[0].*.namestring Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.translations.anyOf[0].*.descriptionstring Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.translations.anyOf[0].*.evidenceGuidancestring Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.translations.anyOf[1] = [] Sì
$.oneOf[0].allOf[1].Payload.types[].rawConfig.seedKeystring No
$.oneOf[0].allOf[1].Payload.types[].rawConfig.penaltyMultiplier = 3 No
$.oneOf[0].allOf[1].Payload.permissionsarray Sì
$.oneOf[0].allOf[1].Payload.permissions[]object No
$.oneOf[0].allOf[1].Payload.permissions[].Namestring Sì
$.oneOf[0].allOf[1].Payload.permissions[].Descriptionstring Sì
$.oneOf[0].allOf[1].Payload.permissions[].DefaultSettingPayloadstring Sì
$.oneOf[0].allOf[1].Payload.overridesarray Sì
$.oneOf[0].allOf[1].Payload.overrides[]object No
$.oneOf[0].allOf[1].Payload.overrides[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.overrides[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.overrides[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.overrides[].UserIDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.overrides[].UserID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.overrides[].UserID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.overrides[].TypeIDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.overrides[].TypeID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.overrides[].TypeID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.overrides[].BountyBasisPointsDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.overrides[].BountyBasisPoints.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.overrides[].BountyBasisPoints.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.overrides[].UpdatedByUserIDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.overrides[].UpdatedByUserID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.overrides[].UpdatedByUserID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.overrides[].LastUpdateDatestring Sì
$.oneOf[0].allOf[1].Payload.auditarray Sì
$.oneOf[0].allOf[1].Payload.audit[]object No
$.oneOf[0].allOf[1].Payload.audit[].IDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.audit[].ID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.audit[].ID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.audit[].CaseID = null Sì
$.oneOf[0].allOf[1].Payload.audit[].TypeID Sì
$.oneOf[0].allOf[1].Payload.audit[].TypeID.anyOf[0]DatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.audit[].TypeID.anyOf[0].oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.audit[].TypeID.anyOf[0].oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.audit[].TypeID.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.audit[].ActorUserIDDatabaseInteger SìInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.audit[].ActorUserID.oneOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.audit[].ActorUserID.oneOf[1]string Sì
$.oneOf[0].allOf[1].Payload.audit[].EventNamestring Sì
$.oneOf[0].allOf[1].Payload.audit[].Payloadstring (application/json) Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload (JSON decodificato) Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[0]object Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[0].versionIDinteger Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[0].statusstring ["Draft","Active","Retired"] Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[0].sortOrderinteger Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[1]object Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[1].hunterIDinteger Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[1].basisPoints Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[1].basisPoints.anyOf[0]integer Sì
$.oneOf[0].allOf[1].Payload.audit[].Payload.oneOf[1].basisPoints.anyOf[1]null Sì
$.oneOf[0].allOf[1].Payload.audit[].CreatedDatestring Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/get_options",
    "RequestUserAlias": "example-user",
    "Payload": {
        "types": [],
        "permissions": [],
        "overrides": [],
        "audit": []
    }
}
Documentazione dell’endpoint leggibile dalle macchine
GET

/v1/infractions/get_report_context

#
Resolve report context from a listing, participant-owned transaction, accessible chat or reported user. Chat targets use structured context or the sole other participant; ambiguous groups leave the user unselected.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
listingID int No 0 Listing identifier, or zero.
transactionID int No 0 Transaction identifier, or zero.
chatID int No 0 Source chat accessible to the reporter, or zero.
userID int No 0 Reported user to preselect, or zero.
subjectTransactionSource string No "" Optional exact transaction source, transaction or custom_article; does not alter the reported user.
subjectTransactionID int No 0 Canonical transaction ID paired with its source.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/infractions/get_report_context' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'listingID={{listingID}}' \
  --data-urlencode 'transactionID={{transactionID}}' \
  --data-urlencode 'chatID={{chatID}}' \
  --data-urlencode 'userID={{userID}}' \
  --data-urlencode 'subjectTransactionSource={{subjectTransactionSource}}' \
  --data-urlencode 'subjectTransactionID={{subjectTransactionID}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$infractions_get_report_context_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].PayloadInfractionReportContext Sì
$.oneOf[0].allOf[1].Payload.oneOf[0]object Sì
$.oneOf[0].allOf[1].Payload.oneOf[0].chatIDinteger No
$.oneOf[0].allOf[1].Payload.oneOf[0].chatNamestring No
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID No
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID.anyOf[0]DatabaseInteger NoInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID.anyOf[0].oneOf[0]integer No
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID.anyOf[0].oneOf[1]string No
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID.anyOf[1]null No
$.oneOf[0].allOf[1].Payload.oneOf[0].transactionIDDatabaseInteger NoInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.oneOf[0].transactionID.oneOf[0]integer No
$.oneOf[0].allOf[1].Payload.oneOf[0].transactionID.oneOf[1]string No
$.oneOf[0].allOf[1].Payload.oneOf[0].sellerIDDatabaseInteger NoInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.oneOf[0].sellerID.oneOf[0]integer No
$.oneOf[0].allOf[1].Payload.oneOf[0].sellerID.oneOf[1]string No
$.oneOf[0].allOf[1].Payload.oneOf[0].sellerAliasstring No
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction No
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0]object No
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].sourcestring ["transaction","custom_article"] Sì
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].idinteger Sì
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].amountCentsinteger Sì
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].datestring Sì
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].labelstring Sì
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].statusstring ["PENDING","COMPLETED","RECORDED"] Sì
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].formattedAmountstring Sì
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[1]null No
$.oneOf[0].allOf[1].Payload.oneOf[1] = [] Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/get_report_context",
    "RequestUserAlias": "example-user",
    "Payload": []
}
Documentazione dell’endpoint leggibile dalle macchine
GET

/v1/infractions/get_report_transactions

#
Resolve an exact transaction reference for a signed-in reporter, regardless of ownership. Staff verifies the connection to the reported user. Only pending/completed marketplace transactions and non-deleted recorded custom articles with valid amounts are returned.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
referenceType string Sì — post_link, bid, appointment, transaction, or custom_article.
referenceID int No 0 Exact identifier in the selected namespace; positive except for post_link, which uses postLink.
postLink string No "" AppointmentTrader post URL or root-relative post path, required for post_link. Resolves the viewable post's stored bid association without fetching the URL. Supports /posts/{id} and the v2 newsfeed postId route.
Esempio di richiesta (cURL)
curl --get \
  'https://it.appointmenttrader.com/v1/infractions/get_report_transactions' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'referenceType={{referenceType}}' \
  --data-urlencode 'referenceID={{referenceID}}' \
  --data-urlencode 'postLink={{postLink}}'

Risposta

JSON
See the shared response schema and synthetic example.
Campi della risposta
CampoTipoObbligatorioDescrizione
$infractions_get_report_transactions_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.transactionsarray Sì
$.oneOf[0].allOf[1].Payload.transactions[]object No
$.oneOf[0].allOf[1].Payload.transactions[].sourcestring ["transaction","custom_article"] Sì
$.oneOf[0].allOf[1].Payload.transactions[].idinteger Sì
$.oneOf[0].allOf[1].Payload.transactions[].amountCentsinteger Sì
$.oneOf[0].allOf[1].Payload.transactions[].datestring Sì
$.oneOf[0].allOf[1].Payload.transactions[].labelstring Sì
$.oneOf[0].allOf[1].Payload.transactions[].statusstring ["PENDING","COMPLETED","RECORDED"] Sì
$.oneOf[0].allOf[1].Payload.transactions[].formattedAmountstring Sì
$.oneOf[0].allOf[1].Payload.hasMoreboolean Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/get_report_transactions",
    "RequestUserAlias": "example-user",
    "Payload": {
        "transactions": [],
        "hasMore": false
    }
}
Documentazione dell’endpoint leggibile dalle macchine
POST

/v1/infractions/set_report

#
Submit a private infraction report with optional uploaded images, videos or PDFs. Attachments and later evidence-chat uploads are linked to the report and visible only to its reporter and authorized reviewers.

Parametri

NomeTipoObbligatorioPredefinitoDescrizione
submissionKey string Sì — Stable unique retry identifier, 16-80 alphanumeric, underscore or hyphen characters.
reportJson string Sì — JSON containing typeID, userID or userAlias, incidentDate (YYYY-MM-DD), required description, optional legacy evidence text, mediaIDs [owned ATMedia IDs], references [{type: seller|transaction|listing|chat|custom_article,id}], and subjectTransactionSource/subjectTransactionID. Transaction-based types require exactly one canonical source/ID pair at submission; other internal references are optional; staff must verify configured required references before approving an adverse finding. Chat references require the reporter's current access and remain private to the reporter and case reviewers. Legacy sellerID/sellerAlias are accepted when neither canonical user field is supplied.
isWritingRequest bool No false Must be true to submit.
Esempio di richiesta (cURL)
curl --request POST \
  'https://it.appointmenttrader.com/v1/infractions/set_report' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'submissionKey={{submissionKey}}' \
  --data-urlencode 'reportJson={{reportJson}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Risposta

JSON
See the shared response schema and synthetic example.
Parametri: reportJson
CampoTipoObbligatorioDescrizione
reportJsonstring (application/json) Sì
reportJsonobject (JSON decodificato) Sì
reportJson.userIDinteger No
reportJson.userAliasstring No
reportJson.sellerIDinteger No
reportJson.sellerAliasstring No
reportJson.incidentDatestring Sì
reportJson.descriptionstring Sì
reportJson.evidencestring No
reportJson.referencesarray No
reportJson.references[]object No
reportJson.references[].typestring ["seller","transaction","listing","chat","custom_article"] Sì
reportJson.references[].idinteger Sì
reportJson.mediaIDsarray No
reportJson.mediaIDs[]DatabaseInteger NoInteger value; legacy MySQL reads may serialize it as a numeric string.
reportJson.mediaIDs[].oneOf[0]integer No
reportJson.mediaIDs[].oneOf[1]string No
reportJson.typeIDinteger Sì
reportJson.subjectTransactionSourcestring ["transaction","custom_article"] No
reportJson.subjectTransactionIDinteger No
Campi della risposta
CampoTipoObbligatorioDescrizione
$infractions_set_report_Response Sì
$.oneOf[0] Sì
$.oneOf[0].allOf[0]object Sì
$.oneOf[0].allOf[0].RequestUserAliasstring Sì
$.oneOf[0].allOf[0].RequestPathstring | null Sì
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Sì
$.oneOf[0].allOf[0].ResponseCodeinteger Sì
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Sì
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring No
$.oneOf[0].allOf[1]object Sì
$.oneOf[0].allOf[1].Payloadobject Sì
$.oneOf[0].allOf[1].Payload.caseIDinteger Sì
$.oneOf[0].allOf[1].Payload.chatIDinteger Sì
$.oneOf[1]object Sì
$.oneOf[1].RequestUserAliasstring Sì
$.oneOf[1].RequestPathstring | null Sì
$.oneOf[1].RequestStatus = "Failed" Sì
$.oneOf[1].ResponseCodeinteger Sì
$.oneOf[1].ResponseMessageAPIResponseMessage Sì
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Sì
$.oneOf[1].ResponseMessage.oneOf[1]array Sì
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage No
$.oneOf[1].ResponseMessage.oneOf[2]object Sì
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage No
$.oneOf[1].RequestImpersonatedByUserAliasstring No
Esempio di risposta
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/set_report",
    "RequestUserAlias": "example-user",
    "Payload": {
        "caseID": 0,
        "chatID": 0
    }
}
Documentazione dell’endpoint leggibile dalle macchine