Yoobic Photos API

contains information about uploaded photos and photos taken as part of a mission and its relations to the mission. ### Fields | Field | Type | Required | Readonly | OrderBy | Description | |----------------------|:--------------:|:--------:|:--------:|:-------:|---------------------------| |`photo_id` | string | x | x | | Unique id of the photo | |`mission_id` | string | | x | x | Unique id of the mission | |`campaign_id` | string | | x | x | Unique id of the campaign | |`store_id` | string | | x | | Unique id of the store | |`title` | string | | x | | The photo title | |`url` | string | | x | | The url to the image | |`markup_url` | string | | x | | The markup url to the image | |`question_id` | string | | x | x | Unique id of the question | |`phash` | string | | x | x | Perceptual hash (fingerprint) | |`tags` | array | | x | | Tags assigned to the photo | |`created_date` | date | | x | | Creation date | |`updated_date` | date | | x | x | Last update date |

Operations 5

GET /public/api/photos/{id} Get #
POST /public/api/photos Create #
GET /public/api/photos?filter={filter} Get All #
GET /public/api/photos/count?where={where} Count #
GET /public/api/photos/export?type={type}&filter={filter} Export #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/yoobic-photos-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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 Specification

yoobic-photos-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: YOOBIC Public Photos API
  version: ''
  description: Welcome to the **YOOBIC Public API** documentation.
servers:
- url: https://<base_url>/
tags:
- name: Photos
  description: contains information about uploaded photos and photos taken as part of a mission and its relations to the mission.
paths:
  /public/api/photos/{id}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  photo_id:
                    type: string
                  updated_date:
                    type: string
                  created_date:
                    type: string
                  mission_id:
                    type: string
                  campaign_id:
                    type: string
                  mission_data_id:
                    type: string
                  store_id:
                    type: string
                  title:
                    type: string
                  url:
                    type: string
                  markup_url:
                    type: string
                  question_id:
                    type: string
                  phash:
                    type: string
                  tags:
                    type: array
                    items:
                      type: string
                  short_desc:
                    type: string
                  entity_id:
                    type: string
                example:
                  photo_id: 54ab03c6546847ee0d30081d
                  updated_date: '2018-05-23T04:51:40.862Z'
                  created_date: '2018-05-23T04:51:40.862Z'
                  mission_id: 54ab03c6546847ee0d30081c
                  campaign_id: 54ab03c6546847ee0d30077a
                  mission_data_id: 54ab03c6546847ee0d300790
                  store_id: 54ab03c6546847ee0d30076a
                  title: Rocket ltd photo 1
                  url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidf.jpg
                  markup_url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidg.jpg
                  question_id: 54ab03c6546847ee0d30072b
                  phash: 12a34b6cd6cb2134
                  tags:
                  - OK
                  short_desc: Mission
                  entity_id: 54ab03c6546847ee0d30072a
              examples:
                response:
                  value:
                    photo_id: 54ab03c6546847ee0d30081d
                    updated_date: '2018-05-23T04:51:40.862Z'
                    created_date: '2018-05-23T04:51:40.862Z'
                    mission_id: 54ab03c6546847ee0d30081c
                    campaign_id: 54ab03c6546847ee0d30077a
                    mission_data_id: 54ab03c6546847ee0d300790
                    store_id: 54ab03c6546847ee0d30076a
                    title: Rocket ltd photo 1
                    url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidf.jpg
                    markup_url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidg.jpg
                    question_id: 54ab03c6546847ee0d30072b
                    phash: 12a34b6cd6cb2134
                    tags:
                    - OK
                    short_desc: Mission
                    entity_id: 54ab03c6546847ee0d30072a
      summary: Get
      operationId: Get
      description: Get a photo for the given id.
      tags:
      - Photos
      parameters:
      - name: id
        in: path
        description: The id of the photo
        required: true
        example: 54ab03c6546847ee0d30081d
        schema:
          type: string
      - name: Accept
        in: header
        description: e.g. application/json
        required: false
        example: application/json
        schema:
          type: string
      security:
      - oauth2: []
  /public/api/photos:
    post:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  photo_id:
                    type: string
                  title:
                    type: string
                  url:
                    type: string
                  created_date:
                    type: string
                  updated_date:
                    type: string
                example:
                  photo_id: 5dc14612234f047cfe100a09
                  title: Shelf No. 1
                  url: https://res.cloudinary.com/www-yoobic-com/image/upload/v1572947475/qyrpyiscrd28s4hbrxqm.jpg
                  created_date: '2019-11-05T09:51:14.937Z'
                  updated_date: '2019-11-05T09:51:14.937Z'
              examples:
                response:
                  value:
                    photo_id: 5dc14612234f047cfe100a09
                    title: Shelf No. 1
                    url: https://res.cloudinary.com/www-yoobic-com/image/upload/v1572947475/qyrpyiscrd28s4hbrxqm.jpg
                    created_date: '2019-11-05T09:51:14.937Z'
                    updated_date: '2019-11-05T09:51:14.937Z'
      summary: Create
      operationId: Create
      description: 'Upload a photo.


        To upload a photo, you should make a post request of type `multipart/form-data`.

        The request body should contain two fields:


        `file`: the binary image file you want to upload.

        `title`: give a title to the photo.'
      tags:
      - Photos
      parameters:
      - name: Accept
        in: header
        description: e.g. application/json
        required: false
        example: application/json
        schema:
          type: string
      security:
      - oauth2: []
  /public/api/photos?filter={filter}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    photo_id:
                      type: string
                    updated_date:
                      type: string
                    created_date:
                      type: string
                    mission_id:
                      type: string
                    campaign_id:
                      type: string
                    mission_data_id:
                      type: string
                    store_id:
                      type: string
                    title:
                      type: string
                    url:
                      type: string
                    markup_url:
                      type: string
                    question_id:
                      type: string
                    phash:
                      type: string
                    tags:
                      type: array
                      items:
                        type: string
                    short_desc:
                      type: string
                    entity_id:
                      type: string
                  required:
                  - photo_id
                  - updated_date
                  - created_date
                  - mission_id
                  - campaign_id
                  - mission_data_id
                  - store_id
                  - title
                  - url
                  - question_id
                  - phash
                  - tags
                  - short_desc
                  - entity_id
                example:
                - photo_id: 54ab03c6546847ee0d30081d
                  updated_date: '2018-05-23T04:51:40.862Z'
                  created_date: '2018-05-23T04:51:40.862Z'
                  mission_id: 54ab03c6546847ee0d30081c
                  campaign_id: 54ab03c6546847ee0d30077a
                  mission_data_id: 54ab03c6546847ee0d300790
                  store_id: 54ab03c6546847ee0d30076a
                  title: Rocket ltd photo 1
                  url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidf.jpg
                  markup_url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidf.jpg
                  question_id: 54ab03c6546847ee0d30072b
                  phash: 12a34b6cd6cb2134
                  tags:
                  - OK
                  short_desc: Mission
                  entity_id: 54ab03c6546847ee0d30072a
                - photo_id: 54ab03c6546847ee0d30081e
                  updated_date: '2018-05-23T04:51:40.862Z'
                  created_date: '2018-05-23T04:51:40.862Z'
                  mission_id: 54ab03c6546847ee0d30081c
                  campaign_id: 54ab03c6546847ee0d30077a
                  mission_data_id: 54ab03c6546847ee0d300790
                  store_id: 54ab03c6546847ee0d30076a
                  title: Rocket ltd photo 2
                  url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidf.jpg
                  question_id: 54ab03c6546847ee0d30072c
                  phash: 12a34b6cd6cb2134
                  tags:
                  - 'No'
                  short_desc: Mission
                  entity_id: 54ab03c6546847ee0d30072b
              examples:
                response:
                  value:
                  - photo_id: 54ab03c6546847ee0d30081d
                    updated_date: '2018-05-23T04:51:40.862Z'
                    created_date: '2018-05-23T04:51:40.862Z'
                    mission_id: 54ab03c6546847ee0d30081c
                    campaign_id: 54ab03c6546847ee0d30077a
                    mission_data_id: 54ab03c6546847ee0d300790
                    store_id: 54ab03c6546847ee0d30076a
                    title: Rocket ltd photo 1
                    url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidf.jpg
                    markup_url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidf.jpg
                    question_id: 54ab03c6546847ee0d30072b
                    phash: 12a34b6cd6cb2134
                    tags:
                    - OK
                    short_desc: Mission
                    entity_id: 54ab03c6546847ee0d30072a
                  - photo_id: 54ab03c6546847ee0d30081e
                    updated_date: '2018-05-23T04:51:40.862Z'
                    created_date: '2018-05-23T04:51:40.862Z'
                    mission_id: 54ab03c6546847ee0d30081c
                    campaign_id: 54ab03c6546847ee0d30077a
                    mission_data_id: 54ab03c6546847ee0d300790
                    store_id: 54ab03c6546847ee0d30076a
                    title: Rocket ltd photo 2
                    url: https://res.cloudinary.com/yoobic/image/upload/v1475779283/r4b1ticoyezzkdubkidf.jpg
                    question_id: 54ab03c6546847ee0d30072c
                    phash: 12a34b6cd6cb2134
                    tags:
                    - 'No'
                    short_desc: Mission
                    entity_id: 54ab03c6546847ee0d30072b
      summary: Get All
      operationId: Get All
      description: Get all the photos.
      tags:
      - Photos
      parameters:
      - name: filter
        in: query
        description: A valid JSON filter object
        required: false
        example: '{}'
        schema:
          type: string
      - name: Accept
        in: header
        description: e.g. application/json
        required: false
        example: application/json
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/Get_AllBody'
  /public/api/photos/count?where={where}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: number
                example:
                  count: 10
              examples:
                response:
                  value:
                    count: 10
      summary: Count
      operationId: Count
      description: Count all the existing entities based on the where filter
      tags:
      - Photos
      parameters:
      - name: where
        in: query
        description: A valid JSON [Where filter](#section-api-requests-filter-where)
        required: false
        example: '{ "property": "value" }'
        schema:
          type: string
      - name: Accept
        in: header
        description: e.g. application/json
        required: false
        example: application/json
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/Get_AllBody'
  /public/api/photos/export?type={type}&filter={filter}:
    get:
      responses:
        '200':
          description: OK
          headers: {}
          content:
            application/json:
              schema:
                type: object
                properties:
                  name:
                    type: string
                  type:
                    type: string
                  priority:
                    type: number
                  nextRunAt:
                    type: string
                  _id:
                    type: string
                example:
                  name: Export file
                  type: normal
                  priority: 0
                  nextRunAt: '2018-09-11T15:56:05.387Z'
                  _id: 5b97e5954b99568b4b9101af
              examples:
                response:
                  value:
                    name: Export file
                    type: normal
                    priority: 0
                    nextRunAt: '2018-09-11T15:56:05.387Z'
                    _id: 5b97e5954b99568b4b9101af
      summary: Export
      operationId: Export
      description: 'Export all results as a file.

        This action is asynchronous and returns the id of a job. See `jobs` endpoint to query the status of the job. The file will contain the results with all of the fields specified on the resource.'
      tags:
      - Photos
      parameters:
      - name: type
        in: path
        description: The type of file, either `csv` (default value) or `excel`
        required: true
        example: csv
        schema:
          type: string
      - name: filter
        in: query
        description: A valid JSON filter object (does not accept a `fields` filter)
        required: false
        example: '{}'
        schema:
          type: string
      - name: Accept
        in: header
        description: e.g. application/json
        required: false
        example: application/json
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/Get_AllBody'
components:
  schemas:
    Default_Header:
      type: object
      required:
      - Authorization
      properties:
        Authorization:
          type: string
          example: Bearer JWT
  requestBodies:
    Get_AllBody:
      content:
        application/json:
          schema:
            type: object
            properties:
              Authorization:
                $ref: '#/components/schemas/Default_Header'
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: /
          tokenUrl: /
          scopes: {}