# Embroidery File Converter Developer API

Κανονική σελίδα: https://embroideryfileconverter.com/el/developers

Δημιουργήστε ροές εργασίας κεντήματος με ένα ιδιωτικό REST API για ψηφιοποίηση εικόνας, μετατροπή αρχείων, κατάσταση εργασίας, επικυρωμένες εξόδους και υπογεγραμμένες λήψεις.

## Επιλέξτε τη σωστή ενσωμάτωση

- Χρησιμοποιήστε το REST API αυτής της σελίδας για backend, προϊόν SaaS, ροή ecommerce, αυτοματισμό ή server-side εφαρμογή.
- Χρησιμοποιήστε την [AI agent and MCP documentation](https://embroideryfileconverter.com/el/ai-agents) όταν ένας assistant πρέπει να ενεργεί για λογαριασμό χρήστη μέσω OAuth.

Μην τοποθετείτε developer API key σε browser JavaScript, mobile εφαρμογή ή distributed desktop binary.

## Βασικό URL και έλεγχος ταυτότητας

- Βασική διεύθυνση URL: `https://embroideryfileconverter.com/api/developer/v1`
- Έλεγχος ταυτότητας: `Authorization: Bearer efc_live_...`
- Τύπος περιεχομένου εργασίας: `multipart/form-data`
- Γενικό προεπιλεγμένο όριο ρυθμού: 60 αιτήματα ανά λεπτό ανά κλειδί, με ξεχωριστό ανώτατο όριο δικτύου
- Διάρκεια ζωής υπογεγραμμένου URL αρχείου: 10 λεπτά
- [Περιγραφή OpenAPI 3.1](https://embroideryfileconverter.com/developers/openapi.json)
- [Δημιουργία ή ανάκληση API κλειδιών](https://embroideryfileconverter.com/developers/keys)

Τα API κλειδιά εμφανίζονται μία φορά, αποθηκεύονται μόνο ως κατακερματισμοί SHA-256, λήγουν και μπορούν να ανακληθούν αμέσως. Διαθέσιμες δυνατότητες: `formats:read`, `usage:read`, `jobs:read` και `jobs:write`.

## Γρήγορη εκκίνηση: δημιουργία εργασίας μετατροπής

```bash
curl -X POST https://embroideryfileconverter.com/api/developer/v1/jobs \
  -H "Authorization: Bearer $EFC_API_KEY" \
  -H "Accept: application/json" \
  -F "workflow=conversion" \
  -F "format=dst" \
  -F "file=@design.pes"
```

Το API επιστρέφει HTTP 202 επειδή η επεξεργασία είναι ασύγχρονη:

```json
{
  "message": "Processing started.",
  "job": {
    "id": "01JEXAMPLEJOBID000000000",
    "status": "queued",
    "workflow": "conversion"
  },
  "jobs": [
    {
      "id": "01JEXAMPLEJOBID000000000",
      "status": "queued",
      "workflow": "conversion"
    }
  ],
  "freeUsage": {
    "previewRemaining": 2,
    "creditBalance": 0
  }
}
```

Διατηρήστε τόσο το `job.id` όσο και το `job.workflow`. Κάντε polling στο workflow-specific endpoint της εργασίας μέχρι η κατάσταση να γίνει `completed` ή `failed`.

## Πεδία δημιουργίας εργασίας

### Μετατροπή

Χρησιμοποιήστε `workflow=conversion` για υπάρχον αρχείο μηχανής κεντήματος.

- Απαιτείται: `workflow`, `format` και είτε `file` είτε `files[]`
- Μέγιστο μέγεθος πηγής: 50 MB ανά αρχείο
- Η μορφή εξόδου `format` πρέπει να είναι εγγράψιμη και διαφορετική από την εντοπισμένη μορφή πηγής.

### Ψηφιοποίηση

Χρησιμοποιήστε `workflow=digitising` για έργα τέχνης JPG, JPEG, PNG, SVG ή WebP.

- Απαιτείται: `workflow`, `format`, είτε `file` είτε `files[]`, `width_mm` και `colour_count`
- `width_mm`: αριθμός από 10 έως 300
- `colour_count`: ακέραιος από 1 έως 24
- Μέγιστο μέγεθος πηγής: 20 MB ανά αρχείο

`files[]` δέχεται έως 10 πηγές σε μία παρτίδα. Λογαριασμοί με περιορισμένη δωρεάν επεξεργασία μπορεί να περιορίζονται σε μία πηγή ανά αίτημα. Κάθε αρχείο σε παρτίδα χρησιμοποιεί την ίδια ροή εργασίας και μορφή εξόδου.

## Ερώτηση κατάστασης εργασίας

```bash
curl https://embroideryfileconverter.com/api/developer/v1/jobs/conversion/01JEXAMPLEJOBID000000000 \
  -H "Authorization: Bearer $EFC_API_KEY" \
  -H "Accept: application/json"
```

Οι πιθανές καταστάσεις είναι `queued`, `processing`, `completed` και `failed`. Μια λεπτομερής απόκριση εργασίας περιέχει μετρικές, προειδοποιήσεις, πληροφορίες αποτυχίας, συμβάντα, προεπισκοπήσεις, εξόδους, κατάσταση ξεκλειδώματος και προσωρινές υπογεγραμμένες διευθύνσεις αρχείων. Ζητήστε ξανά την εργασία όταν λήξει μια υπογεγραμμένη διεύθυνση.

## Πλήρης αναφορά τελικών σημείων

- `GET /formats` απαιτεί `formats:read` και επιστρέφει `data[]` καθώς και `artworkInputs[]`.
- `GET /usage` απαιτεί `usage:read` και επιστρέφει `freeUsage`, συμπεριλαμβανομένων ορίου, πιστώσεων, κόστους ροής εργασίας και ημερομηνιών επαναφοράς.
- `GET /jobs` απαιτεί `jobs:read` και επιστρέφει `data[]` καθώς και `freeUsage` για έως 50 πρόσφατες ιδιόκτητες εργασίες.
- `POST /jobs` απαιτεί `jobs:write` και δημιουργεί μία ή περισσότερες ιδιωτικές ασύγχρονες εργασίες προεπισκόπησης.
- `GET /jobs/conversion/{id}` απαιτεί `jobs:read` και επιστρέφει μία ιδιόκτητη εργασία μετατροπής.
- `GET /jobs/digitising/{id}` απαιτεί `jobs:read` και επιστρέφει μία ιδιόκτητη εργασία ψηφιοποίησης.
- `POST /jobs/conversion/{id}/retry` και `POST /jobs/digitising/{id}/retry` απαιτούν `jobs:write`. Μόνο αποτυχημένες εργασίες με μη ληγμένη πηγή μπορούν να επαναληφθούν.
- `POST /jobs/conversion/{id}/unlock` και `POST /jobs/digitising/{id}/unlock` απαιτούν `jobs:write`. Η εργασία πρέπει να έχει ολοκληρωθεί.
- Οι υπογεγραμμένες διευθύνσεις `GET /uploads/{id}/download` και `GET /uploads/{id}/preview` απαιτούν `jobs:read`. Χρησιμοποιήστε την πλήρη διεύθυνση που επιστρέφεται στην απόκριση εργασίας και όχι να την κατασκευάσετε.

## Συμπεριφορά ξεκλειδώματος

Ελέγξτε το `job.unlock` ή το `GET /usage` πριν το ξεκλείδωμα. Ένα αίτημα ξεκλειδώματος μπορεί να καταναλώσει διαθέσιμο δικαίωμα συνδρομής ή πιστώσεις επεξεργασίας που υπάρχουν ήδη στον λογαριασμό. Εσωτερικοί λογαριασμοί μπορούν να ξεκλειδώσουν χωρίς χρέωση. Δεν ανοίγει οθόνη αγοράς ούτε αγοράζει πιστώσεις. Ανεπαρκές όριο ή πιστώσεις επιστρέφει σφάλμα επικύρωσης.

## Σφάλματα και συμπεριφορά επαναπροσπάθειας

- `401`: ελλείπουσα, κακοσχηματισμένη, ληγμένη ή ανακληθείσα κλειδαριά προγραμματιστή
- `403`: ελλείπουσα δυνατότητα κλειδαριάς ή ο πόρος ανήκει σε άλλο λογαριασμό
- `404`: η εργασία ή το ιδιωτικό αρχείο δεν βρέθηκε
- `409`: η τρέχουσα κατάσταση εργασίας δεν επιτρέπει επαναπροσπάθεια ή ξεκλείδωμα
- `410`: η ιδιωτική μεταφόρτωση πηγής έχει λήξει
- `422`: μη έγκυρα πεδία, αρχείο πηγής, μορφή εξόδου ή ανεπαρκές όριο
- `429`: υπερβλήθηκε όριο ρυθμού· σεβαστείτε το `Retry-After` και χρησιμοποιήστε εκθετική οπισθοχώρηση με jitter

Η δημιουργία εργασίας προστατεύεται επίσης από όρια μεταφόρτωσης και επεξεργασίας, ενώ οι διαδρομές ξεκλειδώματος έχουν αυστηρότερο όριο χρέωσης. Αποφύγετε επιθετική ερώτηση και σταματήστε μετά από τελική κατάσταση.

## Μοντέλο ασφαλείας

Τα αρχεία πελατών παραμένουν ιδιωτικά. Κάθε ερώτηση εργασίας περιορίζεται στον κάτοχο του κλειδιού API, οι υπογεγραμμένες διευθύνσεις λήγουν, τα αρχεία μηχανής προς λήψη παραμένουν κλειδωμένα μέχρι να περάσουν οι έλεγχοι δικαιωμάτων και οι δυνατότητες κλειδαριάς επιβάλλονται πριν εκτελεστεί η ζητούμενη λειτουργία.

## Σχετικές σελίδες

- [Πράκτορες AI και MCP](https://embroideryfileconverter.com/el/ai-agents)
- [Υποστηριζόμενες μορφές κεντήματος](https://embroideryfileconverter.com/el/formats)
- [Απόρρητο και διατήρηση αρχείων](https://embroideryfileconverter.com/el/privacy)
