Get images
Overview
Get the active images uploaded for an account, filtered by type. For type=partners, the response contains a non-paginated image array at data.data. For type=campaign, the response is a top-level paginated collection with data, links, and meta, so per_page only applies to campaign. Each image's path resolves to a full S3 URL.
Prerequisites
- A bearer token. Callable with Partner and Account tokens.
- Values for the required query parameters
company_id,type— see the table below.
Base URL
| Environment | URL |
|---|---|
| Production | https://production-api.shoutaboutus.com |
| Development | https://development-api.shoutaboutus.com |
Endpoint
GET /api/v1/account/images/get
Authentication
-
Requires a bearer token in the
Authorization: Bearer <bearer-token>header. -
Who can call it: Partner and Account tokens.
-
Authentication.
-
Target company must sit inside your own account tree, keyed on
company_id. The value must resolve into the authenticated user's company hierarchy. -
A Partner can reach any company in its tree. An Account reaches only companies in its own hierarchy.
Rate limit
- No rate limit.
Query parameters
- Query:
company_id(integer, required) — must be an existing account and belong to the auth company hierarchy. - Query:
type(string, required) — one ofpartners,campaign. - Query:
per_page(integer, optional) — defaults to 10; only honored whentype=campaign(the paginated branch).
Response
- For
type=partners,data.datais an array of image objects: id(integer) — image id.name(string) — sanitized file name.type(string) — image type (partners).status(string) —active.path(string|null) — full S3 URL, ornullwhen no stored path.- For
type=campaign,datais a top-level paginated collection. Each item has the sameid/name/type/status/pathshape, and the response includes standard top-levellinksandmetapagination keys.
200 OK (partners) · 200
200{
"data": {
"status": "success",
"data": [
{
"id": 5,
"name": "partner_logo.png",
"type": "partners",
"status": "active",
"path": "https://s3.amazonaws.com/bucket/account/images/partners/abc.png"
}
]
}
}200 OK (campaign — paginated) · 200
200{
"data": [
{
"id": 8,
"name": "campaign_banner.png",
"type": "campaign",
"status": "active",
"path": "https://s3.amazonaws.com/bucket/account/images/campaign/xyz.png"
}
],
"links": {
"first": "https://api.example.com/api/v1/account/images/get?page=1",
"last": "https://api.example.com/api/v1/account/images/get?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"per_page": 10,
"to": 1,
"total": 1
}
}422 Validation error · 422
422{
"message": "The type field is required.",
"errors": {
"type": ["The selected type is invalid."],
"company_id": ["The company id field is required."]
}
}Errors
| Status | Meaning |
|---|---|
401 | The bearer token is missing, expired or invalid |
422 | Validation error |
500 | Unexpected server error |
Example request
curl --request GET \
--url "https://production-api.shoutaboutus.com/api/v1/account/images/get?company_id=123&type=partners&per_page=10" \
--header 'Authorization: Bearer <bearer-token>' \
--header 'Accept: application/json'Updated 10 days ago
