Online nu  

/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.

Parameters

NaamTypeVerplichtStandaardBeschrijving
typeID int Ja — Active infraction type.
userAlias string Ja — Reported user's alias. Self-reporting is not allowed.
incidentDate string Nee "" Incident date in YYYY-MM-DD format; empty uses today for the estimate until a date is selected.
subjectTransactionSource string Nee "" Required for transaction-based types: transaction or custom_article.
subjectTransactionID int Nee 0 Required canonical transaction ID for transaction-based types.
Voorbeeldverzoek (cURL)
curl --get \
  'https://nl.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}}'

Retourwaarde

JSON
See the shared response schema and synthetic example.
Antwoordvelden
VeldTypeVerplichtBeschrijving
$infractions_get_bounty_estimate_Response Ja
$.oneOf[0] Ja
$.oneOf[0].allOf[0]object Ja
$.oneOf[0].allOf[0].RequestUserAliasstring Ja
$.oneOf[0].allOf[0].RequestPathstring | null Ja
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Ja
$.oneOf[0].allOf[0].ResponseCodeinteger Ja
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nee
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.amountCentsinteger Ja
$.oneOf[0].allOf[1].Payload.currency = "USD" Ja
$.oneOf[0].allOf[1].Payload.formattedAmountstring Ja
$.oneOf[1]object Ja
$.oneOf[1].RequestUserAliasstring Ja
$.oneOf[1].RequestPathstring | null Ja
$.oneOf[1].RequestStatus = "Failed" Ja
$.oneOf[1].ResponseCodeinteger Ja
$.oneOf[1].ResponseMessageAPIResponseMessage Ja
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[1].ResponseMessage.oneOf[1]array Ja
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[1].RequestImpersonatedByUserAliasstring Nee
Voorbeeldantwoord
{
    "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"
    }
}
Machineleesbare endpointdocumentatie
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.

Parameters

NaamTypeVerplichtStandaardBeschrijving
start int Nee 0 Non-negative offset; negative values use zero.
Voorbeeldverzoek (cURL)
curl --get \
  'https://nl.appointmenttrader.com/v1/infractions/get_my_reports' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'start={{start}}'

Retourwaarde

JSON
See the shared response schema and synthetic example.
Antwoordvelden
VeldTypeVerplichtBeschrijving
$infractions_get_my_reports_Response Ja
$.oneOf[0] Ja
$.oneOf[0].allOf[0]object Ja
$.oneOf[0].allOf[0].RequestUserAliasstring Ja
$.oneOf[0].allOf[0].RequestPathstring | null Ja
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Ja
$.oneOf[0].allOf[0].ResponseCodeinteger Ja
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nee
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.reportsarray Ja
$.oneOf[0].allOf[1].Payload.reports[]object Nee
$.oneOf[0].allOf[1].Payload.reports[].reportIDinteger Ja
$.oneOf[0].allOf[1].Payload.reports[].caseIDinteger Ja
$.oneOf[0].allOf[1].Payload.reports[].reportedUserIDinteger Ja
$.oneOf[0].allOf[1].Payload.reports[].typeNamestring Ja
$.oneOf[0].allOf[1].Payload.reports[].createdDatestring Ja
$.oneOf[0].allOf[1].Payload.reports[].statusstring ["Open","Confirmed","Warning","Rejected","Merged"] Ja
$.oneOf[0].allOf[1].Payload.reports[].chatIDinteger Ja
$.oneOf[0].allOf[1].Payload.startinteger Ja
$.oneOf[0].allOf[1].Payload.hasMoreboolean Ja
$.oneOf[0].allOf[1].Payload.nextStart Ja
$.oneOf[0].allOf[1].Payload.nextStart.anyOf[0]integer Ja
$.oneOf[0].allOf[1].Payload.nextStart.anyOf[1]null Ja
$.oneOf[1]object Ja
$.oneOf[1].RequestUserAliasstring Ja
$.oneOf[1].RequestPathstring | null Ja
$.oneOf[1].RequestStatus = "Failed" Ja
$.oneOf[1].ResponseCodeinteger Ja
$.oneOf[1].ResponseMessageAPIResponseMessage Ja
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[1].ResponseMessage.oneOf[1]array Ja
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[1].RequestImpersonatedByUserAliasstring Nee
Voorbeeldantwoord
{
    "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
    }
}
Machineleesbare endpointdocumentatie
GET

/v1/infractions/get_options

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

Parameters

NaamTypeVerplichtStandaardBeschrijving
admin bool Nee false Include inactive types and administration data; requires RefundAppointments.
Voorbeeldverzoek (cURL)
curl --get \
  'https://nl.appointmenttrader.com/v1/infractions/get_options' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'admin={{admin}}'

Retourwaarde

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

Parameters

NaamTypeVerplichtStandaardBeschrijving
listingID int Nee 0 Listing identifier, or zero.
transactionID int Nee 0 Transaction identifier, or zero.
chatID int Nee 0 Source chat accessible to the reporter, or zero.
userID int Nee 0 Reported user to preselect, or zero.
subjectTransactionSource string Nee "" Optional exact transaction source, transaction or custom_article; does not alter the reported user.
subjectTransactionID int Nee 0 Canonical transaction ID paired with its source.
Voorbeeldverzoek (cURL)
curl --get \
  'https://nl.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}}'

Retourwaarde

JSON
See the shared response schema and synthetic example.
Antwoordvelden
VeldTypeVerplichtBeschrijving
$infractions_get_report_context_Response Ja
$.oneOf[0] Ja
$.oneOf[0].allOf[0]object Ja
$.oneOf[0].allOf[0].RequestUserAliasstring Ja
$.oneOf[0].allOf[0].RequestPathstring | null Ja
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Ja
$.oneOf[0].allOf[0].ResponseCodeinteger Ja
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nee
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].PayloadInfractionReportContext Ja
$.oneOf[0].allOf[1].Payload.oneOf[0]object Ja
$.oneOf[0].allOf[1].Payload.oneOf[0].chatIDinteger Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].chatNamestring Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID.anyOf[0]DatabaseInteger NeeInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID.anyOf[0].oneOf[0]integer Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID.anyOf[0].oneOf[1]string Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].listingID.anyOf[1]null Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].transactionIDDatabaseInteger NeeInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.oneOf[0].transactionID.oneOf[0]integer Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].transactionID.oneOf[1]string Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].sellerIDDatabaseInteger NeeInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.oneOf[0].sellerID.oneOf[0]integer Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].sellerID.oneOf[1]string Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].sellerAliasstring Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0]object Nee
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].sourcestring ["transaction","custom_article"] Ja
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].idinteger Ja
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].amountCentsinteger Ja
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].datestring Ja
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].labelstring Ja
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].statusstring ["PENDING","COMPLETED","RECORDED"] Ja
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[0].formattedAmountstring Ja
$.oneOf[0].allOf[1].Payload.oneOf[0].subjectTransaction.anyOf[1]null Nee
$.oneOf[0].allOf[1].Payload.oneOf[1] = [] Ja
$.oneOf[1]object Ja
$.oneOf[1].RequestUserAliasstring Ja
$.oneOf[1].RequestPathstring | null Ja
$.oneOf[1].RequestStatus = "Failed" Ja
$.oneOf[1].ResponseCodeinteger Ja
$.oneOf[1].ResponseMessageAPIResponseMessage Ja
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[1].ResponseMessage.oneOf[1]array Ja
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[1].RequestImpersonatedByUserAliasstring Nee
Voorbeeldantwoord
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/get_report_context",
    "RequestUserAlias": "example-user",
    "Payload": []
}
Machineleesbare endpointdocumentatie
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.

Parameters

NaamTypeVerplichtStandaardBeschrijving
referenceType string Ja — post_link, bid, appointment, transaction, or custom_article.
referenceID int Nee 0 Exact identifier in the selected namespace; positive except for post_link, which uses postLink.
postLink string Nee "" 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.
Voorbeeldverzoek (cURL)
curl --get \
  'https://nl.appointmenttrader.com/v1/infractions/get_report_transactions' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'referenceType={{referenceType}}' \
  --data-urlencode 'referenceID={{referenceID}}' \
  --data-urlencode 'postLink={{postLink}}'

Retourwaarde

JSON
See the shared response schema and synthetic example.
Antwoordvelden
VeldTypeVerplichtBeschrijving
$infractions_get_report_transactions_Response Ja
$.oneOf[0] Ja
$.oneOf[0].allOf[0]object Ja
$.oneOf[0].allOf[0].RequestUserAliasstring Ja
$.oneOf[0].allOf[0].RequestPathstring | null Ja
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Ja
$.oneOf[0].allOf[0].ResponseCodeinteger Ja
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nee
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.transactionsarray Ja
$.oneOf[0].allOf[1].Payload.transactions[]object Nee
$.oneOf[0].allOf[1].Payload.transactions[].sourcestring ["transaction","custom_article"] Ja
$.oneOf[0].allOf[1].Payload.transactions[].idinteger Ja
$.oneOf[0].allOf[1].Payload.transactions[].amountCentsinteger Ja
$.oneOf[0].allOf[1].Payload.transactions[].datestring Ja
$.oneOf[0].allOf[1].Payload.transactions[].labelstring Ja
$.oneOf[0].allOf[1].Payload.transactions[].statusstring ["PENDING","COMPLETED","RECORDED"] Ja
$.oneOf[0].allOf[1].Payload.transactions[].formattedAmountstring Ja
$.oneOf[0].allOf[1].Payload.hasMoreboolean Ja
$.oneOf[1]object Ja
$.oneOf[1].RequestUserAliasstring Ja
$.oneOf[1].RequestPathstring | null Ja
$.oneOf[1].RequestStatus = "Failed" Ja
$.oneOf[1].ResponseCodeinteger Ja
$.oneOf[1].ResponseMessageAPIResponseMessage Ja
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[1].ResponseMessage.oneOf[1]array Ja
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[1].RequestImpersonatedByUserAliasstring Nee
Voorbeeldantwoord
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/get_report_transactions",
    "RequestUserAlias": "example-user",
    "Payload": {
        "transactions": [],
        "hasMore": false
    }
}
Machineleesbare endpointdocumentatie
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.

Parameters

NaamTypeVerplichtStandaardBeschrijving
submissionKey string Ja — Stable unique retry identifier, 16-80 alphanumeric, underscore or hyphen characters.
reportJson string Ja — 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 Nee false Must be true to submit.
Voorbeeldverzoek (cURL)
curl --request POST \
  'https://nl.appointmenttrader.com/v1/infractions/set_report' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'submissionKey={{submissionKey}}' \
  --data-urlencode 'reportJson={{reportJson}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Retourwaarde

JSON
See the shared response schema and synthetic example.
Parameters: reportJson
VeldTypeVerplichtBeschrijving
reportJsonstring (application/json) Ja
reportJsonobject (gedecodeerde JSON) Ja
reportJson.userIDinteger Nee
reportJson.userAliasstring Nee
reportJson.sellerIDinteger Nee
reportJson.sellerAliasstring Nee
reportJson.incidentDatestring Ja
reportJson.descriptionstring Ja
reportJson.evidencestring Nee
reportJson.referencesarray Nee
reportJson.references[]object Nee
reportJson.references[].typestring ["seller","transaction","listing","chat","custom_article"] Ja
reportJson.references[].idinteger Ja
reportJson.mediaIDsarray Nee
reportJson.mediaIDs[]DatabaseInteger NeeInteger value; legacy MySQL reads may serialize it as a numeric string.
reportJson.mediaIDs[].oneOf[0]integer Nee
reportJson.mediaIDs[].oneOf[1]string Nee
reportJson.typeIDinteger Ja
reportJson.subjectTransactionSourcestring ["transaction","custom_article"] Nee
reportJson.subjectTransactionIDinteger Nee
Antwoordvelden
VeldTypeVerplichtBeschrijving
$infractions_set_report_Response Ja
$.oneOf[0] Ja
$.oneOf[0].allOf[0]object Ja
$.oneOf[0].allOf[0].RequestUserAliasstring Ja
$.oneOf[0].allOf[0].RequestPathstring | null Ja
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Ja
$.oneOf[0].allOf[0].ResponseCodeinteger Ja
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nee
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.caseIDinteger Ja
$.oneOf[0].allOf[1].Payload.chatIDinteger Ja
$.oneOf[1]object Ja
$.oneOf[1].RequestUserAliasstring Ja
$.oneOf[1].RequestPathstring | null Ja
$.oneOf[1].RequestStatus = "Failed" Ja
$.oneOf[1].ResponseCodeinteger Ja
$.oneOf[1].ResponseMessageAPIResponseMessage Ja
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Ja
$.oneOf[1].ResponseMessage.oneOf[1]array Ja
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Nee
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nee
$.oneOf[1].RequestImpersonatedByUserAliasstring Nee
Voorbeeldantwoord
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/infractions/set_report",
    "RequestUserAlias": "example-user",
    "Payload": {
        "caseID": 0,
        "chatID": 0
    }
}
Machineleesbare endpointdocumentatie