Links

Create links in bulk

Each link is created on its own: a taken slug or an option the plan lacks fails that one, and the others are still created. The whole batch must fit the link allowance left this billing cycle, or none is created (403 limit_reached). Counts as one request against the rate limit.

POST
/v1/links/bulk

Each link is created on its own: a taken slug or an option the plan lacks fails that one, and the others are still created. The whole batch must fit the link allowance left this billing cycle, or none is created (403 limit_reached). Counts as one request against the rate limit.

Authorization

apiKey
headerAuthorizationBearer <token>

Request Body

Up to 100 links, each as POST /v1/links takes it. Give each a slug (e.g. from your own record id) to make retries safe: one that was already created comes back as a conflict instead of a duplicate

  1. body

Up to 100 links, each as POST /v1/links takes it. Give each a slug (e.g. from your own record id) to make retries safe: one that was already created comes back as a conflict instead of a duplicate

Items1 <= items <= 100
[index: integer]?

Response Body

Response for status 200

application/json
  1. response
data*array<|>
curl -X POST 'https://api.tinbo.co/v1/links/bulk' \  -H 'Content-Type: application/json' \  -d '[  {    "url": "http://example.com"  }]'
{  "data": [    {      "index": -9007199254740991,      "link": {        "id": "string",        "domain": "string",        "slug": "string",        "shortLink": "string",        "url": "string",        "title": "string",        "description": "string",        "ogImageUrl": "string",        "folderId": "string",        "tags": [          {            "id": "string",            "name": "string",            "color": "string"          }        ],        "redirectType": 0,        "passQuery": true,        "openInApp": true,        "openInBrowser": true,        "utm": {          "property1": "string",          "property2": "string"        },        "geoRules": [          {            "country": "string",            "url": "string"          }        ],        "deviceRules": [          {            "device": "string",            "url": "string"          }        ],        "expiresAt": "string",        "expiredUrl": "string",        "abTest": {          "variants": [            {              "url": "string",              "weight": 0            }          ],          "endsAt": "string"        },        "hasPassword": true,        "qrTemplateId": "string",        "qrStyle": {          "dots": "square",          "eyeFrame": "square",          "eyeBall": "square",          "color": "string",          "eyeColor": "string",          "background": "string",          "logo": true,          "logoSize": 0.15,          "margin": 2,          "outline": "none",          "outlineColor": "string"        },        "createdAt": "string",        "updatedAt": "string"      }    }  ]}