Jetzt online  

/v1/media/

The signed-in account's private lifetime media library and reusable picker.
GET

/v1/media/get_ftp_credentials

#
Read the acting account's generated FTP login. Passwords are recoverable only by the app. Send POST with X-AT-Media-Request: 1. Never put credentials in URLs or client storage.
Anfragebeispiel (cURL)
curl --get \
  'https://de.appointmenttrader.com/v1/media/get_ftp_credentials' \
  --data-urlencode 'key={{API_KEY}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_get_ftp_credentials_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.credentials Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0]object Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].credentialIDinteger Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0]object Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].idinteger Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].namestring Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].emojistring Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].archivedboolean Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].usernamestring JaOwner FTP username; examples are deliberately fictitious.
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password JaOwner FTP password, or null when reset is required. Never use response data as documentation examples.
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password.anyOf[0]string Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].enabledboolean Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].notifyOnImportboolean Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].requiresResetboolean Ja
$.oneOf[0].allOf[1].Payload.credentials.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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/get_ftp_credentials",
    "RequestUserAlias": "example-user",
    "Payload": {
        "credentials": {
            "credentialID": 1,
            "label": null,
            "username": "SYNTHETIC_USERNAME",
            "password": "SYNTHETIC_PASSWORD",
            "enabled": false,
            "notifyOnImport": false,
            "requiresReset": false
        }
    }
}
Maschinenlesbare Endpunktdokumentation
GET

/v1/media/get_ftp_logs

#
Read upload logs through the acting account's FTPS connection. Latest 30 UTC dates, up to 64 KiB of the selected log's tail. Send POST with X-AT-Media-Request: 1. No credentials or owner IDs are accepted.

Parameter

NameTypErforderlichStandardBeschreibung
logDate string Nein "" UTC log date, or empty for the latest available log.
Anfragebeispiel (cURL)
curl --get \
  'https://de.appointmenttrader.com/v1/media/get_ftp_logs' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'logDate={{logDate}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_get_ftp_logs_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.datesarray Ja
$.oneOf[0].allOf[1].Payload.dates[]string Nein
$.oneOf[0].allOf[1].Payload.date Ja
$.oneOf[0].allOf[1].Payload.date.anyOf[0]string Ja
$.oneOf[0].allOf[1].Payload.date.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.textstring Ja
$.oneOf[0].allOf[1].Payload.truncatedboolean 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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/get_ftp_logs",
    "RequestUserAlias": "example-user",
    "Payload": {
        "dates": [
            "2030-01-01"
        ],
        "date": "2030-01-01",
        "text": "Synthetic upload log.",
        "truncated": false
    }
}
Maschinenlesbare Endpunktdokumentation
GET

/v1/media/get_labels

#
Private label catalog, including archived labels. Never accepts another account ID.

Parameter

NameTypErforderlichStandardBeschreibung
afterID int Nein 0 Previous nextID, or zero for the first page.
search string Nein "" Optional name search; restart afterID when changing search.
labelID int Nein 0 Resolve one owned label for an existing selection; zero browses the catalog.
Anfragebeispiel (cURL)
curl --get \
  'https://de.appointmenttrader.com/v1/media/get_labels' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'afterID={{afterID}}' \
  --data-urlencode 'search={{search}}' \
  --data-urlencode 'labelID={{labelID}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_get_labels_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.labelsarray Ja
$.oneOf[0].allOf[1].Payload.labels[]object Nein
$.oneOf[0].allOf[1].Payload.labels[].idinteger Ja
$.oneOf[0].allOf[1].Payload.labels[].namestring Ja
$.oneOf[0].allOf[1].Payload.labels[].emojistring Ja
$.oneOf[0].allOf[1].Payload.labels[].archivedboolean Ja
$.oneOf[0].allOf[1].Payload.nextID Ja
$.oneOf[0].allOf[1].Payload.nextID.anyOf[0]integer Ja
$.oneOf[0].allOf[1].Payload.nextID.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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/get_labels",
    "RequestUserAlias": "example-user",
    "Payload": {
        "labels": [],
        "nextID": 0
    }
}
Maschinenlesbare Endpunktdokumentation
GET

/v1/media/get_my_media

#
Browse retained media owned by the acting account. Never accepts another account ID.

Parameter

NameTypErforderlichStandardBeschreibung
search string Nein "" Filename, title or description search.
kind string Nein "" Empty, image, video, audio or document.
usage string Nein "" Empty, unattached, post, profile, message, request or preview.
month string Nein "" Creation month YYYY-MM, or empty for all dates.
order string Nein "newest" newest or oldest.
cursor string Nein "" Opaque continuation returned by the previous page.
pageSize int Nein 60 Items per page, capped at 100.
labelID int Nein 0 Owned label ID, including archives; zero means all.
unlabeled bool Nein false Only media without labels; mutually exclusive with labelID.
Anfragebeispiel (cURL)
curl --get \
  'https://de.appointmenttrader.com/v1/media/get_my_media' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'search={{search}}' \
  --data-urlencode 'kind={{kind}}' \
  --data-urlencode 'usage={{usage}}' \
  --data-urlencode 'month={{month}}' \
  --data-urlencode 'order={{order}}' \
  --data-urlencode 'cursor={{cursor}}' \
  --data-urlencode 'pageSize={{pageSize}}' \
  --data-urlencode 'labelID={{labelID}}' \
  --data-urlencode 'unlabeled={{unlabeled}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_get_my_media_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.itemsarray Ja
$.oneOf[0].allOf[1].Payload.items[]object Nein
$.oneOf[0].allOf[1].Payload.items[].idinteger Ja
$.oneOf[0].allOf[1].Payload.items[].thumbUrlstring Ja
$.oneOf[0].allOf[1].Payload.items[].mediaUrlstring Ja
$.oneOf[0].allOf[1].Payload.items[].mediaTypestring Ja
$.oneOf[0].allOf[1].Payload.items[].widthinteger Ja
$.oneOf[0].allOf[1].Payload.items[].heightinteger Ja
$.oneOf[0].allOf[1].Payload.items[].titlestring Ja
$.oneOf[0].allOf[1].Payload.items[].isImageboolean Ja
$.oneOf[0].allOf[1].Payload.items[].isEmbeddedboolean Ja
$.oneOf[0].allOf[1].Payload.items[].kindstring ["image","video","audio","document"] Ja
$.oneOf[0].allOf[1].Payload.items[].createdDatestring Ja
$.oneOf[0].allOf[1].Payload.items[].filenamestring Ja
$.oneOf[0].allOf[1].Payload.items[].sizeinteger Ja
$.oneOf[0].allOf[1].Payload.items[].duration Ja
$.oneOf[0].allOf[1].Payload.items[].duration.anyOf[0]number Ja
$.oneOf[0].allOf[1].Payload.items[].duration.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.items[].downloadUrlstring Ja
$.oneOf[0].allOf[1].Payload.items[].labelsarray Ja
$.oneOf[0].allOf[1].Payload.items[].labels[]object Nein
$.oneOf[0].allOf[1].Payload.items[].labels[].idinteger Ja
$.oneOf[0].allOf[1].Payload.items[].labels[].namestring Ja
$.oneOf[0].allOf[1].Payload.items[].labels[].emojistring Ja
$.oneOf[0].allOf[1].Payload.items[].labels[].archivedboolean Ja
$.oneOf[0].allOf[1].Payload.items[].hasUsageboolean Ja
$.oneOf[0].allOf[1].Payload.nextCursor Ja
$.oneOf[0].allOf[1].Payload.nextCursor.anyOf[0]string Ja
$.oneOf[0].allOf[1].Payload.nextCursor.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.lastMediaIDinteger Ja
$.oneOf[0].allOf[1].Payload.pageSignature Ja
$.oneOf[0].allOf[1].Payload.pageSignature.anyOf[0]string Ja
$.oneOf[0].allOf[1].Payload.pageSignature.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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/get_my_media",
    "RequestUserAlias": "example-user",
    "Payload": {
        "items": [],
        "nextCursor": "synthetic-example",
        "lastMediaID": 0,
        "pageSignature": "synthetic-example"
    }
}
Maschinenlesbare Endpunktdokumentation
GET

/v1/media/get_my_media_item

#
Preview one owned file with current permission-checked usage references. Chat usages include chatID only after current chat and message access checks; their URL opens the conversation. File ownership alone never grants access.

Parameter

NameTypErforderlichStandardBeschreibung
mediaID int Ja — Owned ATMedia ID.
afterUsageID int Nein 0 Continuation returned as nextUsageID.
afterLabelPostID int Nein 0 Dynamic usage continuation, -1 when exhausted.
Anfragebeispiel (cURL)
curl --get \
  'https://de.appointmenttrader.com/v1/media/get_my_media_item' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'mediaID={{mediaID}}' \
  --data-urlencode 'afterUsageID={{afterUsageID}}' \
  --data-urlencode 'afterLabelPostID={{afterLabelPostID}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_get_my_media_item_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.itemobject Ja
$.oneOf[0].allOf[1].Payload.item.idinteger Ja
$.oneOf[0].allOf[1].Payload.item.thumbUrlstring Ja
$.oneOf[0].allOf[1].Payload.item.mediaUrlstring Ja
$.oneOf[0].allOf[1].Payload.item.mediaTypestring Ja
$.oneOf[0].allOf[1].Payload.item.widthinteger Ja
$.oneOf[0].allOf[1].Payload.item.heightinteger Ja
$.oneOf[0].allOf[1].Payload.item.titlestring Ja
$.oneOf[0].allOf[1].Payload.item.isImageboolean Ja
$.oneOf[0].allOf[1].Payload.item.isEmbeddedboolean Ja
$.oneOf[0].allOf[1].Payload.item.kindstring ["image","video","audio","document"] Ja
$.oneOf[0].allOf[1].Payload.item.createdDatestring Ja
$.oneOf[0].allOf[1].Payload.item.filenamestring Ja
$.oneOf[0].allOf[1].Payload.item.sizeinteger Ja
$.oneOf[0].allOf[1].Payload.item.duration Ja
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[0]number Ja
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.item.downloadUrlstring Ja
$.oneOf[0].allOf[1].Payload.item.labelsarray Ja
$.oneOf[0].allOf[1].Payload.item.labels[]object Nein
$.oneOf[0].allOf[1].Payload.item.labels[].idinteger Ja
$.oneOf[0].allOf[1].Payload.item.labels[].namestring Ja
$.oneOf[0].allOf[1].Payload.item.labels[].emojistring Ja
$.oneOf[0].allOf[1].Payload.item.labels[].archivedboolean Ja
$.oneOf[0].allOf[1].Payload.usagesarray Ja
$.oneOf[0].allOf[1].Payload.usages[]object Nein
$.oneOf[0].allOf[1].Payload.usages[].typestring Ja
$.oneOf[0].allOf[1].Payload.usages[].rolestring Ja
$.oneOf[0].allOf[1].Payload.usages[].titlestring Ja
$.oneOf[0].allOf[1].Payload.usages[].urlstring Ja
$.oneOf[0].allOf[1].Payload.usages[].chatIDinteger Nein
$.oneOf[0].allOf[1].Payload.usages[].notificationBodyIDinteger Nein
$.oneOf[0].allOf[1].Payload.usages[].versionIdinteger Nein
$.oneOf[0].allOf[1].Payload.usages[].postIdinteger Nein
$.oneOf[0].allOf[1].Payload.hasUnavailableUsageboolean Ja
$.oneOf[0].allOf[1].Payload.nextUsageID Ja
$.oneOf[0].allOf[1].Payload.nextUsageID.anyOf[0]integer Ja
$.oneOf[0].allOf[1].Payload.nextUsageID.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.nextLabelPostID Ja
$.oneOf[0].allOf[1].Payload.nextLabelPostID.anyOf[0]integer Ja
$.oneOf[0].allOf[1].Payload.nextLabelPostID.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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/get_my_media_item",
    "RequestUserAlias": "example-user",
    "Payload": {
        "item": {
            "id": 0,
            "thumbUrl": "synthetic-example",
            "mediaUrl": "synthetic-example",
            "mediaType": "synthetic-example",
            "width": 0,
            "height": 0,
            "title": "synthetic-example",
            "isImage": false,
            "isEmbedded": false,
            "kind": "image",
            "createdDate": "synthetic-example",
            "filename": "synthetic-example",
            "size": 0,
            "duration": 0,
            "downloadUrl": "synthetic-example",
            "labels": []
        },
        "usages": [],
        "hasUnavailableUsage": false,
        "nextUsageID": 0,
        "nextLabelPostID": 0
    }
}
Maschinenlesbare Endpunktdokumentation
GET

/v1/media/get_my_media_timeline

#
Return creation months for the account's current media filters.

Parameter

NameTypErforderlichStandardBeschreibung
search string Nein "" Filename, title or description search.
kind string Nein "" Empty, image, video, audio or document.
usage string Nein "" Empty, unattached, post, profile, message, request or preview.
labelID int Nein 0 Owned label ID, including archives; zero means all.
unlabeled bool Nein false Only media without labels; mutually exclusive with labelID.
Anfragebeispiel (cURL)
curl --get \
  'https://de.appointmenttrader.com/v1/media/get_my_media_timeline' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'search={{search}}' \
  --data-urlencode 'kind={{kind}}' \
  --data-urlencode 'usage={{usage}}' \
  --data-urlencode 'labelID={{labelID}}' \
  --data-urlencode 'unlabeled={{unlabeled}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_get_my_media_timeline_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.monthsarray Ja
$.oneOf[0].allOf[1].Payload.months[]object Nein
$.oneOf[0].allOf[1].Payload.months[].month Ja
$.oneOf[0].allOf[1].Payload.months[].month.anyOf[0]string Ja
$.oneOf[0].allOf[1].Payload.months[].month.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.months[].countDatabaseInteger JaInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.months[].count.oneOf[0]integer Ja
$.oneOf[0].allOf[1].Payload.months[].count.oneOf[1]string 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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/get_my_media_timeline",
    "RequestUserAlias": "example-user",
    "Payload": {
        "months": []
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_copy_post_photo

#
Copy an accessible post photo into the acting user's media library with a new ID and the same file URLs. Also resolves the acting user's wall for the About Me composer; creates that wall if needed. Does not publish a post or change the profile. POST with X-AT-Media-Request: 1 required.

Parameter

NameTypErforderlichStandardBeschreibung
postID int Ja — Accessible source post containing the image.
mediaID int Ja — Retained image attached to that post.
isWritingRequest bool Nein false Explicit write acknowledgement.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_copy_post_photo' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'postID={{postID}}' \
  --data-urlencode 'mediaID={{mediaID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_copy_post_photo_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.itemobject Ja
$.oneOf[0].allOf[1].Payload.item.idinteger Ja
$.oneOf[0].allOf[1].Payload.item.thumbUrlstring Ja
$.oneOf[0].allOf[1].Payload.item.mediaUrlstring Ja
$.oneOf[0].allOf[1].Payload.item.mediaTypestring Ja
$.oneOf[0].allOf[1].Payload.item.widthinteger Ja
$.oneOf[0].allOf[1].Payload.item.heightinteger Ja
$.oneOf[0].allOf[1].Payload.item.titlestring Ja
$.oneOf[0].allOf[1].Payload.item.isImageboolean Ja
$.oneOf[0].allOf[1].Payload.item.isEmbeddedboolean Ja
$.oneOf[0].allOf[1].Payload.item.kindstring ["image","video","audio","document"] Ja
$.oneOf[0].allOf[1].Payload.item.createdDatestring Ja
$.oneOf[0].allOf[1].Payload.item.filenamestring Ja
$.oneOf[0].allOf[1].Payload.item.sizeinteger Ja
$.oneOf[0].allOf[1].Payload.item.duration Ja
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[0]number Ja
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.item.downloadUrlstring Ja
$.oneOf[0].allOf[1].Payload.wallBoardobject Ja
$.oneOf[0].allOf[1].Payload.wallBoard.idinteger Ja
$.oneOf[0].allOf[1].Payload.wallBoard.boardIDinteger Ja
$.oneOf[0].allOf[1].Payload.wallBoard.slugstring Ja
$.oneOf[0].allOf[1].Payload.wallBoard.namestring Ja
$.oneOf[0].allOf[1].Payload.wallBoard.citystring Ja
$.oneOf[0].allOf[1].Payload.wallBoard.cityGroupCodestring Ja
$.oneOf[0].allOf[1].Payload.wallBoard.intentstring Ja
$.oneOf[0].allOf[1].Payload.wallBoard.callbackstring Ja
$.oneOf[0].allOf[1].Payload.wallBoard.countinteger Ja
$.oneOf[0].allOf[1].Payload.wallBoard.unitLabelstring Ja
$.oneOf[0].allOf[1].Payload.wallBoard.createsRegularBoardPostboolean Ja
$.oneOf[0].allOf[1].Payload.wallBoard.isDefaultRequestBoardboolean Ja
$.oneOf[0].allOf[1].Payload.wallBoard.isDefaultListingBoardboolean Ja
$.oneOf[0].allOf[1].Payload.wallBoard.routingEnabledboolean Ja
$.oneOf[0].allOf[1].Payload.wallBoard.routingDescriptionstring Ja
$.oneOf[0].allOf[1].Payload.wallBoard.selectedboolean Ja
$.oneOf[0].allOf[1].Payload.wallBoard.viewerCanReadboolean Ja
$.oneOf[0].allOf[1].Payload.wallBoard.viewerCanWriteboolean Ja
$.oneOf[0].allOf[1].Payload.wallBoard.hasAccessMetadata = true 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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_copy_post_photo",
    "RequestUserAlias": "example-user",
    "Payload": {
        "item": {
            "id": 0,
            "thumbUrl": "synthetic-example",
            "mediaUrl": "synthetic-example",
            "mediaType": "synthetic-example",
            "width": 0,
            "height": 0,
            "title": "synthetic-example",
            "isImage": false,
            "isEmbedded": false,
            "kind": "image",
            "createdDate": "synthetic-example",
            "filename": "synthetic-example",
            "size": 0,
            "duration": 0,
            "downloadUrl": "synthetic-example"
        },
        "wallBoard": {
            "id": 0,
            "boardID": 0,
            "slug": "synthetic-example",
            "name": "synthetic-example",
            "city": "synthetic-example",
            "cityGroupCode": "synthetic-example",
            "intent": "synthetic-example",
            "callback": "synthetic-example",
            "count": 0,
            "unitLabel": "synthetic-example",
            "createsRegularBoardPost": false,
            "isDefaultRequestBoard": false,
            "isDefaultListingBoard": false,
            "routingEnabled": false,
            "routingDescription": "synthetic-example",
            "selected": false,
            "viewerCanRead": false,
            "viewerCanWrite": false,
            "hasAccessMetadata": true
        }
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_delete_file

#
Soft-delete a file owned by the acting account by setting ATMedia.DeletedDate. The stored file and reference rows are retained. Deleted media is excluded from My Media, attachment selection and owner downloads. Repeating deletion is safe. POST with X-AT-Media-Request: 1 required; no other account ID is accepted.

Parameter

NameTypErforderlichStandardBeschreibung
mediaID int Ja — Owned ATMedia ID.
isWritingRequest bool Nein false Explicit write acknowledgement.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_delete_file' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'mediaID={{mediaID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_delete_file_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.mediaIDinteger Ja
$.oneOf[0].allOf[1].Payload.deleted = true 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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_delete_file",
    "RequestUserAlias": "example-user",
    "Payload": {
        "mediaID": 0,
        "deleted": true
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_ftp_credentials

#
Create a random FTP login with six uppercase A-Z letters in each field, or reset it. Reset preserves an existing six-letter uppercase username; legacy names are shortened. The home-directory slug, virtual identity, default label, notification preference and enabled state survive reset. New accounts stay disabled until the FTP server provisions their home directory. Send POST with X-AT-Media-Request: 1. No user ID, username or password is accepted.

Parameter

NameTypErforderlichStandardBeschreibung
reset bool Nein false Replace the password and shorten a legacy username if needed.
isWritingRequest bool Nein false Explicit write acknowledgement.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_ftp_credentials' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'reset={{reset}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_ftp_credentials_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.credentials Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0]object Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].credentialIDinteger Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0]object Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].idinteger Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].namestring Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].emojistring Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].archivedboolean Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].usernamestring JaOwner FTP username; examples are deliberately fictitious.
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password JaOwner FTP password, or null when reset is required. Never use response data as documentation examples.
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password.anyOf[0]string Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].enabledboolean Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].notifyOnImportboolean Ja
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].requiresResetboolean Ja
$.oneOf[0].allOf[1].Payload.credentials.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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_ftp_credentials",
    "RequestUserAlias": "example-user",
    "Payload": {
        "credentials": {
            "credentialID": 1,
            "label": null,
            "username": "SYNTHETIC_USERNAME",
            "password": "SYNTHETIC_PASSWORD",
            "enabled": false,
            "notifyOnImport": false,
            "requiresReset": false
        }
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_ftp_label

#
Set a credential's default label independently of its password. Records upload-time history atomically. POST with X-AT-Media-Request: 1 required. Resetting credentials preserves this setting and upload directory.

Parameter

NameTypErforderlichStandardBeschreibung
credentialID int Ja — Owned FTP credential ID.
labelID int Nein 0 Owned active label ID; zero clears.
isWritingRequest bool Nein false Explicit write acknowledgement.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_ftp_label' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'credentialID={{credentialID}}' \
  --data-urlencode 'labelID={{labelID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_ftp_label_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.credentialIDinteger Ja
$.oneOf[0].allOf[1].Payload.label Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0]object Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].idinteger Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].namestring Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].emojistring Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].archivedboolean Ja
$.oneOf[0].allOf[1].Payload.label.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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_ftp_label",
    "RequestUserAlias": "example-user",
    "Payload": {
        "credentialID": 0,
        "label": {
            "id": 0,
            "name": "synthetic-example",
            "emoji": "synthetic-example",
            "archived": false
        }
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_ftp_notifications

#
Enable/disable priority alerts for successful FTP imports. Defaults to on for new and existing credentials. Changes apply to future imports, including uploads awaiting delivery. Existing alerts and replayed imports are unchanged. POST with X-AT-Media-Request: 1 required. Does not reset the login or change the default label/directory.

Parameter

NameTypErforderlichStandardBeschreibung
credentialID int Ja — Owned FTP credential ID.
notifyOnImport bool Ja — Whether successful imports create a priority notification.
isWritingRequest bool Nein false Explicit write acknowledgement.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_ftp_notifications' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'credentialID={{credentialID}}' \
  --data-urlencode 'notifyOnImport={{notifyOnImport}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_ftp_notifications_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.credentialIDinteger Ja
$.oneOf[0].allOf[1].Payload.notifyOnImportboolean 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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_ftp_notifications",
    "RequestUserAlias": "example-user",
    "Payload": {
        "credentialID": 0,
        "notifyOnImport": false
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_import_from_url

#
Download one public HTTP(S) media URL into the acting account's My Media library. Accepts JPEG, PNG, GIF, WebP, AVIF, MP4, MOV, WebM and PDF, up to 25 MiB. Send POST with X-AT-Media-Request: 1. Authenticated session or owner API key required. Retry with the same importID and identical parameters to receive the original media. Future FTP delivery adapters can call this endpoint with an owner-authorized API identity and a public HTTPS delivery URL. FTP slugs/passwords alone never authorize imports.

Parameter

NameTypErforderlichStandardBeschreibung
sourceURL string Ja — Absolute public media URL. Private-network addresses and credentials are rejected.
importID string Ja — Caller-generated stable delivery ID, 8-128 letters, numbers, underscores or hyphens.
title string Nein "" Optional media title, up to 250 characters.
isWritingRequest bool Nein false Explicit write acknowledgement.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_import_from_url' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'sourceURL={{sourceURL}}' \
  --data-urlencode 'importID={{importID}}' \
  --data-urlencode 'title={{title}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_import_from_url_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.itemobject Ja
$.oneOf[0].allOf[1].Payload.item.idinteger Ja
$.oneOf[0].allOf[1].Payload.item.thumbUrlstring Ja
$.oneOf[0].allOf[1].Payload.item.mediaUrlstring Ja
$.oneOf[0].allOf[1].Payload.item.mediaTypestring Ja
$.oneOf[0].allOf[1].Payload.item.widthinteger Ja
$.oneOf[0].allOf[1].Payload.item.heightinteger Ja
$.oneOf[0].allOf[1].Payload.item.titlestring Ja
$.oneOf[0].allOf[1].Payload.item.isImageboolean Ja
$.oneOf[0].allOf[1].Payload.item.isEmbeddedboolean Ja
$.oneOf[0].allOf[1].Payload.item.kindstring ["image","video","audio","document"] Ja
$.oneOf[0].allOf[1].Payload.item.createdDatestring Ja
$.oneOf[0].allOf[1].Payload.item.filenamestring Ja
$.oneOf[0].allOf[1].Payload.item.sizeinteger Ja
$.oneOf[0].allOf[1].Payload.item.duration Ja
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[0]number Ja
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[1]null Ja
$.oneOf[0].allOf[1].Payload.item.downloadUrlstring Ja
$.oneOf[0].allOf[1].Payload.reusedboolean 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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_import_from_url",
    "RequestUserAlias": "example-user",
    "Payload": {
        "item": {
            "id": 0,
            "thumbUrl": "synthetic-example",
            "mediaUrl": "synthetic-example",
            "mediaType": "synthetic-example",
            "width": 0,
            "height": 0,
            "title": "synthetic-example",
            "isImage": false,
            "isEmbedded": false,
            "kind": "image",
            "createdDate": "synthetic-example",
            "filename": "synthetic-example",
            "size": 0,
            "duration": 0,
            "downloadUrl": "synthetic-example"
        },
        "reused": false
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_label

#
Create or rename an owned label; archived names remain reserved. POST with X-AT-Media-Request: 1.

Parameter

NameTypErforderlichStandardBeschreibung
name string Ja — Trimmed label name, 1–100 characters, case-insensitively unique per account.
labelID int Nein 0 Zero creates a label; otherwise renames without changing its ID.
isWritingRequest bool Nein false Explicit write acknowledgement.
emoji string Nein null One emoji; omitted preserves the existing value.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_label' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'name={{name}}' \
  --data-urlencode 'labelID={{labelID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}' \
  --data-urlencode 'emoji={{emoji}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_label_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.label Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0]object Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].idinteger Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].namestring Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].emojistring Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].archivedboolean Ja
$.oneOf[0].allOf[1].Payload.label.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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_label",
    "RequestUserAlias": "example-user",
    "Payload": {
        "label": {
            "id": 0,
            "name": "synthetic-example",
            "emoji": "synthetic-example",
            "archived": false
        }
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_label_archived

#
Archive or restore a label. Archiving atomically clears FTP defaults and records history; existing links remain. POST with X-AT-Media-Request: 1 required.

Parameter

NameTypErforderlichStandardBeschreibung
labelID int Ja — Owned label ID.
archived bool Ja — True archives; false restores.
isWritingRequest bool Nein false Explicit write acknowledgement.
confirmDetach bool Nein false Acknowledge permanent removal from linked posts.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_label_archived' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'labelID={{labelID}}' \
  --data-urlencode 'archived={{archived}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}' \
  --data-urlencode 'confirmDetach={{confirmDetach}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_label_archived_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.label Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0]object Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].idinteger Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].namestring Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].emojistring Ja
$.oneOf[0].allOf[1].Payload.label.anyOf[0].archivedboolean Ja
$.oneOf[0].allOf[1].Payload.label.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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_label_archived",
    "RequestUserAlias": "example-user",
    "Payload": {
        "label": {
            "id": 0,
            "name": "synthetic-example",
            "emoji": "synthetic-example",
            "archived": false
        }
    }
}
Maschinenlesbare Endpunktdokumentation
POST

/v1/media/set_media_labels

#
Atomically add/remove labels on up to 100 owned, retained media. Unrelated links are preserved. Archived labels may be removed but never manually added. POST with X-AT-Media-Request: 1 required.

Parameter

NameTypErforderlichStandardBeschreibung
mediaIDs string Ja — JSON array of 1–100 media IDs.
labelIDs string Ja — JSON array of 1–100 owned label IDs.
remove bool Nein false True removes; false adds. Repeating an operation is harmless.
isWritingRequest bool Nein false Explicit write acknowledgement.
Anfragebeispiel (cURL)
curl --request POST \
  'https://de.appointmenttrader.com/v1/media/set_media_labels' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'mediaIDs={{mediaIDs}}' \
  --data-urlencode 'labelIDs={{labelIDs}}' \
  --data-urlencode 'remove={{remove}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Rückgabe

JSON
See the shared response schema and synthetic example.
Parameter: mediaIDs
FeldTypErforderlichBeschreibung
mediaIDsstring (application/json) Ja
mediaIDsarray (dekodiertes JSON) Ja
mediaIDs[]integer Nein
Parameter: labelIDs
FeldTypErforderlichBeschreibung
labelIDsstring (application/json) Ja
labelIDsarray (dekodiertes JSON) Ja
labelIDs[]integer Nein
Antwortfelder
FeldTypErforderlichBeschreibung
$media_set_media_labels_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 Nein
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Ja
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Nein
$.oneOf[0].allOf[1]object Ja
$.oneOf[0].allOf[1].Payloadobject Ja
$.oneOf[0].allOf[1].Payload.updatedinteger 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 Nein
$.oneOf[1].ResponseMessage.oneOf[2]object Ja
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Nein
$.oneOf[1].RequestImpersonatedByUserAliasstring Nein
Antwortbeispiel
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_media_labels",
    "RequestUserAlias": "example-user",
    "Payload": {
        "updated": 0
    }
}
Maschinenlesbare Endpunktdokumentation