Gazette Demo
API documentation
| API address | https://gazette.demo.artypanel.com/api/v2 |
| HTTP method | POST |
| Request format | Form fields (application/x-www-form-urlencoded) |
| Response format | JSON |
| API version | v2 |
Service list services
Required unless marked Optional
key |
Your API key |
action |
services |
Only services available for sale are listed. service is the service number you use when placing an order. rate is your account-specific price per 1000 units (TRY); min and max are the minimum and maximum quantity for one order. type is Default (standard), a service type with extra order fields (Package, SEO, Custom Comments, Mentions, Mentions with Hashtags, Mentions Custom List, Mentions Hashtag, Mentions User Followers, Mentions Media Likers, Poll, Comment Replies, Web Traffic; see Service types) or Subscriptions (subscription); refill and cancel are each true when the service accepts that request through the API (action=refill, action=cancel), otherwise false. dripfeed true means drip-feed orders can be placed on this service with runs and interval.
Example response
[
{
"service": 1,
"name": "Instagram Followers",
"type": "Default",
"category": "Instagram",
"rate": "0.90",
"min": "50",
"max": "10000",
"refill": true,
"cancel": true,
"dripfeed": true
},
{
"service": 2,
"name": "Facebook Likes",
"type": "Default",
"category": "Facebook",
"rate": "8",
"min": "10",
"max": "1500",
"refill": false,
"cancel": false,
"dripfeed": false
},
{
"service": 3,
"name": "Instagram Custom Comments",
"type": "Custom Comments",
"category": "Instagram",
"rate": "12",
"min": "5",
"max": "500",
"refill": false,
"cancel": true,
"dripfeed": false
}
]
New order add
Required unless marked Optional
key |
Your API key |
action |
add |
service |
Service number (the service value in the service list) |
link |
Link of the page to act on, or username (up to 191 characters) |
quantity |
Quantity: a whole number between the service's min and max values. |
runs Optional |
Drip-feed order: number of runs (2 to 1000). Only for dripfeed enabled services, sent together with interval. |
interval Optional |
Drip-feed order: minutes between two runs (1 to 10080). Sent together with runs. |
username Optional |
Subscription (type Subscriptions): the username of the account to follow. Used instead of link and quantity. |
min Optional |
Subscription: minimum quantity per post (within the service limits) |
max Optional |
Subscription: maximum quantity per post (within the service limits; max cannot be less than min) |
posts Optional |
Subscription: maximum number of new posts to process. Required; unlimited subscriptions are not available |
old_posts Optional |
Subscription: optional, number of existing posts to process |
delay Optional |
Subscription: delay in minutes; 0, 5, 10, 15, 20, 30, 40, 50, 60, 90, 120, 150, 180, 210, 240, 270, 300, 360, 420, 480, 540 or 600 |
expiry Optional |
Subscription: optional end date (dd/mm/yyyy, after today). The response is {"order": subscription id}; the fee is (posts + old_posts) x max x price / 1000 charged immediately (unlike PerfectPanel, the range is billed at the maximum quantity). The amount for unprocessed posts is refunded when the subscription is completed, expires or is canceled |
Service type
| Package | link One package per order: quantity is not needed (it is ignored), and the order costs the listed rate once. |
| SEO | link quantity keywords keywords: the search keywords. |
| Custom Comments | link comments comments: one comment per line. quantity is not needed (it is ignored): it is the number of comments. |
| Mentions | link quantity usernames usernames: usernames separated by commas or line breaks (a leading @ is allowed). |
| Mentions with Hashtags | link quantity usernames hashtags usernames: usernames separated by commas or line breaks; hashtags: hashtags separated by commas or line breaks (a leading @ or # is allowed). |
| Mentions Custom List | usernames usernames: one username per line. link and quantity are not needed (they are ignored): quantity is the number of usernames. |
| Mentions Hashtag | link quantity hashtag hashtag: the hashtag whose users are mentioned (a leading # is allowed). |
| Mentions User Followers | link quantity username username: the account whose followers are mentioned (a leading @ is allowed). |
| Mentions Media Likers | link quantity media media: the link of the media whose likers are mentioned. |
| Poll | link quantity answer_number answer_number: the number of the answer to vote for (a whole number from 1). |
| Comment Replies | username comments username: the username of the comment owner; comments: one reply per line. link and quantity are not needed (they are ignored): quantity is the number of replies. |
| Web Traffic | link quantity country device type_of_traffic google_keyword referring_url country, device and type_of_traffic are required; google_keyword and referring_url are optional. |
order is your order number; use it to check the status. The order amount is deducted from your balance immediately. For drip-feed orders, runs and interval are sent together (only for dripfeed enabled services); in this case order is the order number of the first run. The total amount (run price x runs) is deducted immediately; later runs are not charged separately, and they are queued interval minutes apart.
If you send runs or interval to a service that does not support drip-feed, the order is not accepted and {"error": "Drip-feed is not available for this service"} is returned.
Subscription (Subscriptions): For services with type Subscriptions, do not send link or quantity; send username (the username of the account to follow), min and max (minimum and maximum quantity per post, within the service limits), posts (maximum number of new posts to process; required; there are no unlimited subscriptions), old_posts (optional, number of existing posts to process), delay (minutes: 0, 5, 10, 15, 20, 30, 40, 50, 60, 90, 120, 150, 180, 210, 240, 270, 300, 360, 420, 480, 540 or 600) and expiry (optional, dd/mm/yyyy, after today). The response is {"order": subscription id}. This number is not an order number and starts from 1000000001.
Fee difference: Unlike PerfectPanel, a subscription cannot be opened on this panel without a number of posts, and the fee is (posts + old_posts) x max x price / 1000, charged immediately when the subscription is opened; the range is billed at the maximum quantity. When a subscription is completed, expires or is canceled, the amount for unprocessed posts is refunded.
Sample request
curl -X POST https://gazette.demo.artypanel.com/api/v2 \
-d key=YOUR_API_KEY \
-d action=add \
-d service=1 \
-d link=https://instagram.com/username \
-d quantity=1000
Example response
{
"order": 23501
}
Error responses:
Incorrect request |
a required parameter is missing, the quantity is not a whole number, runs or interval was sent on its own |
Incorrect service ID |
service not found or not available for sale |
Incorrect link |
link is longer than 191 characters |
Quantity less than minimal 50 |
quantity is below the service's minimum order quantity |
Quantity more than maximal 10000 |
quantity is above the service's maximum order quantity |
Not enough funds on balance |
your balance is insufficient |
Drip-feed is not available for this service |
service does not support drip-feed |
Runs less than minimal 2 | Runs more than maximal 1000 |
number of runs is outside the limits |
Interval less than minimal 1 | Interval more than maximal 10080 |
interval is outside the limits |
Posts is required (unlimited subscriptions are not available) |
in a subscription, posts is missing; unlimited subscriptions are not available |
Min less than minimal 10 | Max more than maximal 1000 | Max less than minimal 10 |
subscription quantity is outside the limits |
Incorrect username | Incorrect posts | Incorrect delay | Incorrect expiry date |
subscription field is invalid |
Incorrect comments | Incorrect usernames |
a field of a service type with extra order fields has the wrong format (see Service types) |
Order status status
If you query with a subscription number (starting from 1000000001), the response is in this form: {"status", "expiry", "posts", "orders"}. Fields: status (Active, Paused, Completed, Expired or Canceled), expiry (dd/mm/yyyy or empty), posts (number of processed posts) and orders (order numbers of this subscription's post orders). Only your own subscriptions can be queried.
Required unless marked Optional
key |
Your API key |
action |
status |
order |
Order number |
charge is the net charge: order amount minus the refunded amount (the order amount itself when nothing was refunded), start_count is the start count, remains is the remaining quantity, currency is the currency. You can only query your own orders.
Example response
{
"charge": "0.27819",
"start_count": "3572",
"status": "Partial",
"remains": "157",
"currency": "TRY"
}
Error responses:
Incorrect request |
order was not sent |
Incorrect order ID |
order not found or does not belong to you |
Status of multiple orders status
Required unless marked Optional
key |
Your API key |
action |
status |
orders |
Comma-separated order numbers (up to 100) |
The response is an object keyed by the numbers you sent. For numbers that are not found or do not belong to you, error is returned.
Example response
{
"1": {
"charge": "0.27819",
"start_count": "3572",
"status": "Partial",
"remains": "157",
"currency": "TRY"
},
"10": {
"error": "Incorrect order ID"
},
"100": {
"charge": "1.44219",
"start_count": "234",
"status": "In progress",
"remains": "10",
"currency": "TRY"
}
}
Error responses:
Incorrect request |
more than 100 numbers were sent; the whole request is rejected |
Balance balance
Required unless marked Optional
key |
Your API key |
action |
balance |
Example response
{
"balance": "100.84292",
"currency": "TRY"
}
Refill refill
Opens a refill request for one of your Completed or Partial orders when its service allows refill (the service's refill value in the service list is true). The response is the refill number; follow the request with action=refill_status.
{"error": "Refill is not available for this order"} is returned when the service does not allow refill, the order belongs to a subscription or a drip-feed order, the order is not Completed or Partial, a refill request for the order is already open, the last refill of the order was completed less than 24 hours ago, or you already have 50 open refill and cancel requests.
Required unless marked Optional
key |
Your API key |
action |
refill |
order |
Order number |
orders Optional |
Instead of order: comma-separated order numbers (up to 100) |
Example response
{
"refill": 1
}
[
{
"order": 1,
"refill": 1
},
{
"order": 2,
"refill": {
"error": "Refill is not available for this order"
}
},
{
"order": 3,
"refill": {
"error": "Incorrect order ID"
}
}
]
Refill status refill_status
Required unless marked Optional
key |
Your API key |
action |
refill_status |
refill |
Refill number |
refills Optional |
Instead of refill: comma-separated refill numbers (up to 100) |
status is one of Pending, In progress, Completed, Rejected or Error. Only your own refills can be queried; any other number returns Refill not found.
Example response
{
"status": "Completed"
}
[
{
"refill": 1,
"status": "Completed"
},
{
"refill": 2,
"status": {
"error": "Refill not found"
}
}
]
Cancel cancel
Opens a cancel request for each order whose service allows cancel (the service's cancel value in the service list is true) and whose status is Pending, In progress or Processing. "cancel": 1 means the request was opened; it is not an immediate cancellation and nothing is refunded yet. When the provider cancels the order, its status becomes Canceled (or Partial when part of it was already delivered) and the undelivered part is refunded to your balance; follow the result with action=status.
Cancel is not available for this order is returned for an order when its service does not allow cancel, the order belongs to a subscription or a drip-feed order, the order has another status, a cancel request for the order is already open, or you already have 50 open refill and cancel requests.
Required unless marked Optional
key |
Your API key |
action |
cancel |
orders |
Comma-separated order numbers (up to 100) |
Example response
[
{
"order": 2,
"cancel": 1
},
{
"order": 9,
"cancel": {
"error": "Incorrect order ID"
}
},
{
"order": 5,
"cancel": {
"error": "Cancel is not available for this order"
}
}
]
Error messages error
Errors are returned with HTTP 200 as a JSON object with an "error" field. Check every response for it.
Invalid API key |
The API key was not sent, is incorrect, or your account is closed |
Incorrect request |
action is missing or unknown, a required parameter is missing, the quantity is not a whole number, runs or interval was sent on its own, or more than 100 numbers were sent in one request |
Incorrect service ID |
Service not found or not available for sale |
Incorrect link |
The link is longer than 191 characters |
Quantity less than minimal N |
Quantity is below the service's minimum order quantity (N) |
Quantity more than maximal N |
Quantity is above the service's maximum order quantity (N) |
Not enough funds on balance |
Your balance is not enough for this order |
Drip-feed is not available for this service |
The service does not support drip-feed; runs and interval are not accepted for this service |
Runs less than minimal 2 |
Number of runs is below 2 |
Runs more than maximal 1000 |
Number of runs is above 1000 |
Interval less than minimal 1 |
Interval is shorter than 1 minute |
Interval more than maximal 10080 |
Interval is longer than 10080 minutes (one week) |
Incorrect order ID |
Order not found or does not belong to you |
Refill is not available for this order |
The service does not allow refill, or this order cannot be refilled now (see Refill) |
Refill not found |
There is no refill with this number |
Cancel is not available for this order |
The service does not allow cancel, or this order cannot be canceled now (see Cancel) |
Incorrect <field> |
A field of a service type with extra order fields has the wrong format, for example Incorrect comments or Incorrect usernames (see Service types) |
Internal server error |
An unexpected server error occurred (HTTP 500). The result of the request is unclear, so check your balance before sending the order again |
Order statuses
Pending |
Pending |
Processing |
Processing |
In progress |
In progress |
Completed |
Completed |
Partial |
Partial |
Canceled |
Canceled |
Refunded |
Refunded |