En ligne  

/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.
Exemple de requête (cURL)
curl --get \
  'https://fr.appointmenttrader.com/v1/media/get_ftp_credentials' \
  --data-urlencode 'key={{API_KEY}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_get_ftp_credentials_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.credentials Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0]object Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].credentialIDinteger Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0]object Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].idinteger Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].namestring Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].emojistring Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].archivedboolean Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].usernamestring OuiOwner FTP username; examples are deliberately fictitious.
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password OuiOwner 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 Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].enabledboolean Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].notifyOnImportboolean Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].requiresResetboolean Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
        }
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
logDate string Non "" UTC log date, or empty for the latest available log.
Exemple de requête (cURL)
curl --get \
  'https://fr.appointmenttrader.com/v1/media/get_ftp_logs' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'logDate={{logDate}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_get_ftp_logs_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.datesarray Oui
$.oneOf[0].allOf[1].Payload.dates[]string Non
$.oneOf[0].allOf[1].Payload.date Oui
$.oneOf[0].allOf[1].Payload.date.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.date.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.textstring Oui
$.oneOf[0].allOf[1].Payload.truncatedboolean Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
    }
}
Documentation du point de terminaison lisible par machine
GET

/v1/media/get_labels

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

Paramètres

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

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_get_labels_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.labelsarray Oui
$.oneOf[0].allOf[1].Payload.labels[]object Non
$.oneOf[0].allOf[1].Payload.labels[].idinteger Oui
$.oneOf[0].allOf[1].Payload.labels[].namestring Oui
$.oneOf[0].allOf[1].Payload.labels[].emojistring Oui
$.oneOf[0].allOf[1].Payload.labels[].archivedboolean Oui
$.oneOf[0].allOf[1].Payload.nextID Oui
$.oneOf[0].allOf[1].Payload.nextID.anyOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.nextID.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/get_labels",
    "RequestUserAlias": "example-user",
    "Payload": {
        "labels": [],
        "nextID": 0
    }
}
Documentation du point de terminaison lisible par machine
GET

/v1/media/get_my_media

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

Paramètres

NomTypeObligatoireValeur par défautDescription
search string Non "" Filename, title or description search.
kind string Non "" Empty, image, video, audio or document.
usage string Non "" Empty, unattached, post, profile, message, request or preview.
month string Non "" Creation month YYYY-MM, or empty for all dates.
order string Non "newest" newest or oldest.
cursor string Non "" Opaque continuation returned by the previous page.
pageSize int Non 60 Items per page, capped at 100.
labelID int Non 0 Owned label ID, including archives; zero means all.
unlabeled bool Non false Only media without labels; mutually exclusive with labelID.
Exemple de requête (cURL)
curl --get \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_get_my_media_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.itemsarray Oui
$.oneOf[0].allOf[1].Payload.items[]object Non
$.oneOf[0].allOf[1].Payload.items[].idinteger Oui
$.oneOf[0].allOf[1].Payload.items[].thumbUrlstring Oui
$.oneOf[0].allOf[1].Payload.items[].mediaUrlstring Oui
$.oneOf[0].allOf[1].Payload.items[].mediaTypestring Oui
$.oneOf[0].allOf[1].Payload.items[].widthinteger Oui
$.oneOf[0].allOf[1].Payload.items[].heightinteger Oui
$.oneOf[0].allOf[1].Payload.items[].titlestring Oui
$.oneOf[0].allOf[1].Payload.items[].isImageboolean Oui
$.oneOf[0].allOf[1].Payload.items[].isEmbeddedboolean Oui
$.oneOf[0].allOf[1].Payload.items[].kindstring ["image","video","audio","document"] Oui
$.oneOf[0].allOf[1].Payload.items[].createdDatestring Oui
$.oneOf[0].allOf[1].Payload.items[].filenamestring Oui
$.oneOf[0].allOf[1].Payload.items[].sizeinteger Oui
$.oneOf[0].allOf[1].Payload.items[].duration Oui
$.oneOf[0].allOf[1].Payload.items[].duration.anyOf[0]number Oui
$.oneOf[0].allOf[1].Payload.items[].duration.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.items[].downloadUrlstring Oui
$.oneOf[0].allOf[1].Payload.items[].labelsarray Oui
$.oneOf[0].allOf[1].Payload.items[].labels[]object Non
$.oneOf[0].allOf[1].Payload.items[].labels[].idinteger Oui
$.oneOf[0].allOf[1].Payload.items[].labels[].namestring Oui
$.oneOf[0].allOf[1].Payload.items[].labels[].emojistring Oui
$.oneOf[0].allOf[1].Payload.items[].labels[].archivedboolean Oui
$.oneOf[0].allOf[1].Payload.items[].hasUsageboolean Oui
$.oneOf[0].allOf[1].Payload.nextCursor Oui
$.oneOf[0].allOf[1].Payload.nextCursor.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.nextCursor.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.lastMediaIDinteger Oui
$.oneOf[0].allOf[1].Payload.pageSignature Oui
$.oneOf[0].allOf[1].Payload.pageSignature.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.pageSignature.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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"
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
mediaID int Oui — Owned ATMedia ID.
afterUsageID int Non 0 Continuation returned as nextUsageID.
afterLabelPostID int Non 0 Dynamic usage continuation, -1 when exhausted.
Exemple de requête (cURL)
curl --get \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_get_my_media_item_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.itemobject Oui
$.oneOf[0].allOf[1].Payload.item.idinteger Oui
$.oneOf[0].allOf[1].Payload.item.thumbUrlstring Oui
$.oneOf[0].allOf[1].Payload.item.mediaUrlstring Oui
$.oneOf[0].allOf[1].Payload.item.mediaTypestring Oui
$.oneOf[0].allOf[1].Payload.item.widthinteger Oui
$.oneOf[0].allOf[1].Payload.item.heightinteger Oui
$.oneOf[0].allOf[1].Payload.item.titlestring Oui
$.oneOf[0].allOf[1].Payload.item.isImageboolean Oui
$.oneOf[0].allOf[1].Payload.item.isEmbeddedboolean Oui
$.oneOf[0].allOf[1].Payload.item.kindstring ["image","video","audio","document"] Oui
$.oneOf[0].allOf[1].Payload.item.createdDatestring Oui
$.oneOf[0].allOf[1].Payload.item.filenamestring Oui
$.oneOf[0].allOf[1].Payload.item.sizeinteger Oui
$.oneOf[0].allOf[1].Payload.item.duration Oui
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[0]number Oui
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.item.downloadUrlstring Oui
$.oneOf[0].allOf[1].Payload.item.labelsarray Oui
$.oneOf[0].allOf[1].Payload.item.labels[]object Non
$.oneOf[0].allOf[1].Payload.item.labels[].idinteger Oui
$.oneOf[0].allOf[1].Payload.item.labels[].namestring Oui
$.oneOf[0].allOf[1].Payload.item.labels[].emojistring Oui
$.oneOf[0].allOf[1].Payload.item.labels[].archivedboolean Oui
$.oneOf[0].allOf[1].Payload.usagesarray Oui
$.oneOf[0].allOf[1].Payload.usages[]object Non
$.oneOf[0].allOf[1].Payload.usages[].typestring Oui
$.oneOf[0].allOf[1].Payload.usages[].rolestring Oui
$.oneOf[0].allOf[1].Payload.usages[].titlestring Oui
$.oneOf[0].allOf[1].Payload.usages[].urlstring Oui
$.oneOf[0].allOf[1].Payload.usages[].chatIDinteger Non
$.oneOf[0].allOf[1].Payload.usages[].notificationBodyIDinteger Non
$.oneOf[0].allOf[1].Payload.usages[].versionIdinteger Non
$.oneOf[0].allOf[1].Payload.usages[].postIdinteger Non
$.oneOf[0].allOf[1].Payload.hasUnavailableUsageboolean Oui
$.oneOf[0].allOf[1].Payload.nextUsageID Oui
$.oneOf[0].allOf[1].Payload.nextUsageID.anyOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.nextUsageID.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.nextLabelPostID Oui
$.oneOf[0].allOf[1].Payload.nextLabelPostID.anyOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.nextLabelPostID.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
    }
}
Documentation du point de terminaison lisible par machine
GET

/v1/media/get_my_media_timeline

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

Paramètres

NomTypeObligatoireValeur par défautDescription
search string Non "" Filename, title or description search.
kind string Non "" Empty, image, video, audio or document.
usage string Non "" Empty, unattached, post, profile, message, request or preview.
labelID int Non 0 Owned label ID, including archives; zero means all.
unlabeled bool Non false Only media without labels; mutually exclusive with labelID.
Exemple de requête (cURL)
curl --get \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_get_my_media_timeline_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.monthsarray Oui
$.oneOf[0].allOf[1].Payload.months[]object Non
$.oneOf[0].allOf[1].Payload.months[].month Oui
$.oneOf[0].allOf[1].Payload.months[].month.anyOf[0]string Oui
$.oneOf[0].allOf[1].Payload.months[].month.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.months[].countDatabaseInteger OuiInteger value; legacy MySQL reads may serialize it as a numeric string.
$.oneOf[0].allOf[1].Payload.months[].count.oneOf[0]integer Oui
$.oneOf[0].allOf[1].Payload.months[].count.oneOf[1]string Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/get_my_media_timeline",
    "RequestUserAlias": "example-user",
    "Payload": {
        "months": []
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
postID int Oui — Accessible source post containing the image.
mediaID int Oui — Retained image attached to that post.
isWritingRequest bool Non false Explicit write acknowledgement.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_set_copy_post_photo_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.itemobject Oui
$.oneOf[0].allOf[1].Payload.item.idinteger Oui
$.oneOf[0].allOf[1].Payload.item.thumbUrlstring Oui
$.oneOf[0].allOf[1].Payload.item.mediaUrlstring Oui
$.oneOf[0].allOf[1].Payload.item.mediaTypestring Oui
$.oneOf[0].allOf[1].Payload.item.widthinteger Oui
$.oneOf[0].allOf[1].Payload.item.heightinteger Oui
$.oneOf[0].allOf[1].Payload.item.titlestring Oui
$.oneOf[0].allOf[1].Payload.item.isImageboolean Oui
$.oneOf[0].allOf[1].Payload.item.isEmbeddedboolean Oui
$.oneOf[0].allOf[1].Payload.item.kindstring ["image","video","audio","document"] Oui
$.oneOf[0].allOf[1].Payload.item.createdDatestring Oui
$.oneOf[0].allOf[1].Payload.item.filenamestring Oui
$.oneOf[0].allOf[1].Payload.item.sizeinteger Oui
$.oneOf[0].allOf[1].Payload.item.duration Oui
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[0]number Oui
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.item.downloadUrlstring Oui
$.oneOf[0].allOf[1].Payload.wallBoardobject Oui
$.oneOf[0].allOf[1].Payload.wallBoard.idinteger Oui
$.oneOf[0].allOf[1].Payload.wallBoard.boardIDinteger Oui
$.oneOf[0].allOf[1].Payload.wallBoard.slugstring Oui
$.oneOf[0].allOf[1].Payload.wallBoard.namestring Oui
$.oneOf[0].allOf[1].Payload.wallBoard.citystring Oui
$.oneOf[0].allOf[1].Payload.wallBoard.cityGroupCodestring Oui
$.oneOf[0].allOf[1].Payload.wallBoard.intentstring Oui
$.oneOf[0].allOf[1].Payload.wallBoard.callbackstring Oui
$.oneOf[0].allOf[1].Payload.wallBoard.countinteger Oui
$.oneOf[0].allOf[1].Payload.wallBoard.unitLabelstring Oui
$.oneOf[0].allOf[1].Payload.wallBoard.createsRegularBoardPostboolean Oui
$.oneOf[0].allOf[1].Payload.wallBoard.isDefaultRequestBoardboolean Oui
$.oneOf[0].allOf[1].Payload.wallBoard.isDefaultListingBoardboolean Oui
$.oneOf[0].allOf[1].Payload.wallBoard.routingEnabledboolean Oui
$.oneOf[0].allOf[1].Payload.wallBoard.routingDescriptionstring Oui
$.oneOf[0].allOf[1].Payload.wallBoard.selectedboolean Oui
$.oneOf[0].allOf[1].Payload.wallBoard.viewerCanReadboolean Oui
$.oneOf[0].allOf[1].Payload.wallBoard.viewerCanWriteboolean Oui
$.oneOf[0].allOf[1].Payload.wallBoard.hasAccessMetadata = true Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
        }
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
mediaID int Oui — Owned ATMedia ID.
isWritingRequest bool Non false Explicit write acknowledgement.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.appointmenttrader.com/v1/media/set_delete_file' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'mediaID={{mediaID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_set_delete_file_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.mediaIDinteger Oui
$.oneOf[0].allOf[1].Payload.deleted = true Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_delete_file",
    "RequestUserAlias": "example-user",
    "Payload": {
        "mediaID": 0,
        "deleted": true
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
reset bool Non false Replace the password and shorten a legacy username if needed.
isWritingRequest bool Non false Explicit write acknowledgement.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.appointmenttrader.com/v1/media/set_ftp_credentials' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'reset={{reset}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_set_ftp_credentials_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.credentials Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0]object Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].credentialIDinteger Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0]object Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].idinteger Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].namestring Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].emojistring Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[0].archivedboolean Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].label.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].usernamestring OuiOwner FTP username; examples are deliberately fictitious.
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password OuiOwner 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 Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].password.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].enabledboolean Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].notifyOnImportboolean Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[0].requiresResetboolean Oui
$.oneOf[0].allOf[1].Payload.credentials.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
        }
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
credentialID int Oui — Owned FTP credential ID.
labelID int Non 0 Owned active label ID; zero clears.
isWritingRequest bool Non false Explicit write acknowledgement.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.appointmenttrader.com/v1/media/set_ftp_label' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'credentialID={{credentialID}}' \
  --data-urlencode 'labelID={{labelID}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_set_ftp_label_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.credentialIDinteger Oui
$.oneOf[0].allOf[1].Payload.label Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0]object Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].idinteger Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].namestring Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].emojistring Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].archivedboolean Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
        }
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
credentialID int Oui — Owned FTP credential ID.
notifyOnImport bool Oui — Whether successful imports create a priority notification.
isWritingRequest bool Non false Explicit write acknowledgement.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.appointmenttrader.com/v1/media/set_ftp_notifications' \
  --data-urlencode 'key={{API_KEY}}' \
  --data-urlencode 'credentialID={{credentialID}}' \
  --data-urlencode 'notifyOnImport={{notifyOnImport}}' \
  --data-urlencode 'isWritingRequest={{isWritingRequest}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_set_ftp_notifications_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.credentialIDinteger Oui
$.oneOf[0].allOf[1].Payload.notifyOnImportboolean Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_ftp_notifications",
    "RequestUserAlias": "example-user",
    "Payload": {
        "credentialID": 0,
        "notifyOnImport": false
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
sourceURL string Oui — Absolute public media URL. Private-network addresses and credentials are rejected.
importID string Oui — Caller-generated stable delivery ID, 8-128 letters, numbers, underscores or hyphens.
title string Non "" Optional media title, up to 250 characters.
isWritingRequest bool Non false Explicit write acknowledgement.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_set_import_from_url_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.itemobject Oui
$.oneOf[0].allOf[1].Payload.item.idinteger Oui
$.oneOf[0].allOf[1].Payload.item.thumbUrlstring Oui
$.oneOf[0].allOf[1].Payload.item.mediaUrlstring Oui
$.oneOf[0].allOf[1].Payload.item.mediaTypestring Oui
$.oneOf[0].allOf[1].Payload.item.widthinteger Oui
$.oneOf[0].allOf[1].Payload.item.heightinteger Oui
$.oneOf[0].allOf[1].Payload.item.titlestring Oui
$.oneOf[0].allOf[1].Payload.item.isImageboolean Oui
$.oneOf[0].allOf[1].Payload.item.isEmbeddedboolean Oui
$.oneOf[0].allOf[1].Payload.item.kindstring ["image","video","audio","document"] Oui
$.oneOf[0].allOf[1].Payload.item.createdDatestring Oui
$.oneOf[0].allOf[1].Payload.item.filenamestring Oui
$.oneOf[0].allOf[1].Payload.item.sizeinteger Oui
$.oneOf[0].allOf[1].Payload.item.duration Oui
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[0]number Oui
$.oneOf[0].allOf[1].Payload.item.duration.anyOf[1]null Oui
$.oneOf[0].allOf[1].Payload.item.downloadUrlstring Oui
$.oneOf[0].allOf[1].Payload.reusedboolean Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
    }
}
Documentation du point de terminaison lisible par machine
POST

/v1/media/set_label

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

Paramètres

NomTypeObligatoireValeur par défautDescription
name string Oui — Trimmed label name, 1–100 characters, case-insensitively unique per account.
labelID int Non 0 Zero creates a label; otherwise renames without changing its ID.
isWritingRequest bool Non false Explicit write acknowledgement.
emoji string Non null One emoji; omitted preserves the existing value.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_set_label_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.label Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0]object Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].idinteger Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].namestring Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].emojistring Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].archivedboolean Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
        }
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
labelID int Oui — Owned label ID.
archived bool Oui — True archives; false restores.
isWritingRequest bool Non false Explicit write acknowledgement.
confirmDetach bool Non false Acknowledge permanent removal from linked posts.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Champs de réponse
ChampTypeObligatoireDescription
$media_set_label_archived_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.label Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0]object Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].idinteger Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].namestring Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].emojistring Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[0].archivedboolean Oui
$.oneOf[0].allOf[1].Payload.label.anyOf[1]null Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "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
        }
    }
}
Documentation du point de terminaison lisible par machine
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.

Paramètres

NomTypeObligatoireValeur par défautDescription
mediaIDs string Oui — JSON array of 1–100 media IDs.
labelIDs string Oui — JSON array of 1–100 owned label IDs.
remove bool Non false True removes; false adds. Repeating an operation is harmless.
isWritingRequest bool Non false Explicit write acknowledgement.
Exemple de requête (cURL)
curl --request POST \
  'https://fr.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}}'

Retour

JSON
See the shared response schema and synthetic example.
Paramètres: mediaIDs
ChampTypeObligatoireDescription
mediaIDsstring (application/json) Oui
mediaIDsarray (JSON décodé) Oui
mediaIDs[]integer Non
Paramètres: labelIDs
ChampTypeObligatoireDescription
labelIDsstring (application/json) Oui
labelIDsarray (JSON décodé) Oui
labelIDs[]integer Non
Champs de réponse
ChampTypeObligatoireDescription
$media_set_media_labels_Response Oui
$.oneOf[0] Oui
$.oneOf[0].allOf[0]object Oui
$.oneOf[0].allOf[0].RequestUserAliasstring Oui
$.oneOf[0].allOf[0].RequestPathstring | null Oui
$.oneOf[0].allOf[0].RequestStatus = "Succeeded" Oui
$.oneOf[0].allOf[0].ResponseCodeinteger Oui
$.oneOf[0].allOf[0].ResponseMessageAPIResponseMessage Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1]array Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2]object Oui
$.oneOf[0].allOf[0].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[0].allOf[0].RequestImpersonatedByUserAliasstring Non
$.oneOf[0].allOf[1]object Oui
$.oneOf[0].allOf[1].Payloadobject Oui
$.oneOf[0].allOf[1].Payload.updatedinteger Oui
$.oneOf[1]object Oui
$.oneOf[1].RequestUserAliasstring Oui
$.oneOf[1].RequestPathstring | null Oui
$.oneOf[1].RequestStatus = "Failed" Oui
$.oneOf[1].ResponseCodeinteger Oui
$.oneOf[1].ResponseMessageAPIResponseMessage Oui
$.oneOf[1].ResponseMessage.oneOf[0]string | number | boolean | null Oui
$.oneOf[1].ResponseMessage.oneOf[1]array Oui
$.oneOf[1].ResponseMessage.oneOf[1][]APIResponseMessage Non
$.oneOf[1].ResponseMessage.oneOf[2]object Oui
$.oneOf[1].ResponseMessage.oneOf[2].*APIResponseMessage Non
$.oneOf[1].RequestImpersonatedByUserAliasstring Non
Exemple de réponse
{
    "RequestStatus": "Succeeded",
    "ResponseCode": 100,
    "ResponseMessage": "Synthetic success example.",
    "RequestPath": "/v1/media/set_media_labels",
    "RequestUserAlias": "example-user",
    "Payload": {
        "updated": 0
    }
}
Documentation du point de terminaison lisible par machine