Imagefactory External API
The External API from Imagefactory — 1 operation(s) for external.
The External API from Imagefactory — 1 operation(s) for external.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/imagefactory-co-kr:imagefactory-co-kr-external-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Imagefactory External API
version: 1.2.0
description: Team usage, resize, and image generation. Team integration keys are issued in My Page → API Keys. Approved team members can issue and use image keys; team-wide usage requires an admin or owner. Unapproved teams cannot issue image keys or submit new jobs. Removing team approval preserves accepted jobs and their settlement. Generate outputs are 1024×1024; use resize for exact dimensions. Reference instructions are optional per image. Pair mode requires count = reference count; roundrobin permits 1–5 outputs. Product images and design references have separate roles. Safe zones use output pixels from the top-left. Private input blobs are deleted on completion or timeout.
contact:
name: Imagefactory Support
url: https://www.imagefactory.co.kr
servers:
- url: https://www.imagefactory.co.kr
description: Production
security:
- bearerAuth: []
tags:
- name: External
paths:
/api/external/v1/usage/transactions:
get:
summary: List usage transactions
description: Returns transactions explicitly bound to the requesting teamId; personal and other-team rows are excluded. Results are ordered by `created_at` descending (newest first). If `has_more` is `true`, pass the returned `next_page` value as the `page` parameter on the next request.
operationId: listUsageTransactions
parameters:
- name: starting_at
in: query
required: true
schema:
type: string
format: date-time
description: 'Start of the time range (inclusive). ISO 8601 UTC. Example: `2026-05-01T00:00:00Z`.'
- name: ending_at
in: query
required: true
schema:
type: string
format: date-time
description: End of the time range (**exclusive**). ISO 8601 UTC. The half-open interval ensures the same row is never returned twice across consecutive ranges.
- name: limit
in: query
required: false
schema:
type: integer
minimum: 1
maximum: 1000
default: 100
description: Maximum number of rows per page. Defaults to 100, capped at 1000.
- name: page
in: query
required: false
schema:
type: string
description: Opaque cursor token. Pass the `next_page` value from the previous response. Omit on the first request.
responses:
'200':
description: A page of usage transactions.
content:
application/json:
schema:
$ref: '#/components/schemas/TransactionsResponse'
examples:
default:
value:
data:
- transaction_id: tx_abc123
user_id: uid_member1
team_id: team_acme
type: team_usage
feature: banner_create
points: 100
delta: -100
direction: debit
currency: POINT
created_at: '2026-06-03T14:22:08.123Z'
as_of: '2026-06-03T14:30:00.000Z'
has_more: true
next_page: MjAyNi0wNi0wM1QxNDoyMjowOC4xMjNa
'400':
description: Invalid or missing query parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, malformed, or revoked credentials.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
tags:
- External
components:
schemas:
TransactionsResponse:
type: object
required:
- data
- as_of
- has_more
- next_page
properties:
data:
type: array
items:
$ref: '#/components/schemas/UsageTransaction'
as_of:
type: string
format: date-time
description: Server timestamp at which the response was generated. Use this to reason about data freshness when reconciling.
has_more:
type: boolean
description: Whether additional pages of results are available for the same query.
next_page:
type: string
nullable: true
description: Opaque cursor for fetching the next page. `null` when `has_more` is `false`. Forward this value verbatim as the `page` parameter on the next request.
UsageTransaction:
type: object
required:
- transaction_id
- user_id
- team_id
- type
- feature
- points
- delta
- direction
- currency
- created_at
properties:
external_user_id:
type: string
description: Optional caller-supplied identifier; not an authorization identity.
task_id:
type: string
description: External image task identifier, when applicable.
transaction_id:
type: string
description: Unique identifier for the transaction. Stable across requests; use as an idempotency key when persisting to your own store.
user_id:
type: string
description: Identifier of the team member who initiated the transaction.
team_id:
type: string
description: Identifier of the requesting team. Rows without this teamId are excluded.
type:
type: string
enum:
- usage
- team_usage
- refund
description: Kind of transaction. `usage` — deducted from a personal point balance. `team_usage` — deducted from the shared team balance. `refund` — credited back after a failed operation.
feature:
type: string
enum:
- banner_create
- banner_resize
- banner_edit
- other
- unknown
description: Product feature that incurred the charge. `unknown` is returned only for a small number of historical rows where the feature could not be inferred.
points:
type: integer
minimum: 0
description: Magnitude of the transaction in points. Always non-negative — use this field for usage totals.
delta:
type: integer
description: Signed change to the point balance. Negative for debits, positive for refunds. Use this field when integrating with double-entry accounting.
direction:
type: string
enum:
- debit
- credit
description: '`debit` indicates a deduction; `credit` indicates a refund or restoration.'
currency:
type: string
enum:
- POINT
description: Unit of measure. Currently always `POINT`. Future revisions may introduce additional units (such as USD); always inspect this field rather than assuming a fixed unit.
created_at:
type: string
format: date-time
description: When the transaction occurred. ISO 8601 UTC with millisecond precision.
ErrorResponse:
type: object
properties:
success:
type: boolean
const: false
errorCode:
type: string
requestId:
type: string
error:
type: object
properties:
code:
type: string
message:
type: string
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: imf_<token>:<secret>
description: API keys are issued from the Imagefactory account dashboard (My Page → API Keys). Team owners and admins can issue integration keys with usage:read permission.