API Catalog

Visualize and analyze the API overlap between standards specifications and type systems within browsers.

Browser information was gathered by traversing the type system within the latest available version of the top browsers. Specification data was gathered by extracting Web IDL definitions from notable web specifications. Note that an API that is shown as detected does not necessarily mean it functions per specification; where the absence of an API under an interface could be due to the browser supporting an API in a different part of the prototype chain. This data is made publicly available to help each browser vendor work toward the goal of a more interoperable web platform. For more information, visit our FAQ page.

APIs by interface

API NameSpecificationsMicrosoft EdgeGoogle ChromeMozilla FirefoxApple Safari
WebGLActiveInfo
constructor
length 
name
prototype
size
type
WebGLBuffer
constructor
length 
name
prototype
WebGLContextEvent
constructor
length 
name
prototype
statusMessage
WebGLFramebuffer
constructor
length 
name
prototype
WebGLObject
constructor   
length    
name   
prototype   
WebGLProgram
constructor
length 
name
prototype
WebGLRenderbuffer
constructor
length 
name
prototype
WebGLRenderingContext
ACTIVE_ATTRIBUTES 
ACTIVE_TEXTURE 
ACTIVE_UNIFORMS 
activeTexture 
ALIASED_LINE_WIDTH_RANGE 
ALIASED_POINT_SIZE_RANGE 
ALPHA 
ALPHA_BITS 
ALWAYS 
ARRAY_BUFFER 
ARRAY_BUFFER_BINDING 
ATTACHED_SHADERS 
attachShader 
BACK 
bindAttribLocation 
bindBuffer 
bindFramebuffer 
bindRenderbuffer 
bindTexture 
BLEND 
BLEND_COLOR 
BLEND_DST_ALPHA 
BLEND_DST_RGB 
BLEND_EQUATION 
BLEND_EQUATION_ALPHA 
BLEND_EQUATION_RGB 
BLEND_SRC_ALPHA 
BLEND_SRC_RGB 
blendColor 
blendEquation 
blendEquationSeparate 
blendFunc 
blendFuncSeparate 
BLUE_BITS 
BOOL 
BOOL_VEC2 
BOOL_VEC3 
BOOL_VEC4 
BROWSER_DEFAULT_WEBGL 
BUFFER_SIZE 
BUFFER_USAGE 
bufferData 
bufferSubData 
BYTE 
canvas 
CCW 
checkFramebufferStatus 
CLAMP_TO_EDGE 
clear 
clearColor 
clearDepth 
clearStencil 
COLOR_ATTACHMENT0 
COLOR_BUFFER_BIT 
COLOR_CLEAR_VALUE 
COLOR_WRITEMASK 
colorMask 
COMPILE_STATUS 
compileShader 
COMPRESSED_TEXTURE_FORMATS 
compressedTexImage2D 
compressedTexSubImage2D 
CONSTANT_ALPHA 
CONSTANT_COLOR 
constructor
CONTEXT_LOST_WEBGL 
copyTexImage2D 
copyTexSubImage2D 
createBuffer 
createFramebuffer 
createProgram 
createRenderbuffer 
createShader 
createTexture 
CULL_FACE 
CULL_FACE_MODE 
cullFace 
CURRENT_PROGRAM 
CURRENT_VERTEX_ATTRIB 
CW 
DECR 
DECR_WRAP 
DELETE_STATUS 
deleteBuffer 
deleteFramebuffer 
deleteProgram 
deleteRenderbuffer 
deleteShader 
deleteTexture 
DEPTH_ATTACHMENT 
DEPTH_BITS 
DEPTH_BUFFER_BIT 
DEPTH_CLEAR_VALUE 
DEPTH_COMPONENT 
DEPTH_COMPONENT16 
DEPTH_FUNC 
DEPTH_RANGE 
DEPTH_STENCIL 
DEPTH_STENCIL_ATTACHMENT 
DEPTH_TEST 
DEPTH_WRITEMASK 
depthFunc 
depthMask 
depthRange 
detachShader 
disable 
disableVertexAttribArray 
DITHER 
DONT_CARE 
drawArrays 
drawElements 
drawingBufferHeight 
drawingBufferWidth 
DST_ALPHA 
DST_COLOR 
DYNAMIC_DRAW 
ELEMENT_ARRAY_BUFFER 
ELEMENT_ARRAY_BUFFER_BINDING 
enable 
enableVertexAttribArray 
EQUAL 
FASTEST 
finish 
FLOAT 
FLOAT_MAT2 
FLOAT_MAT3 
FLOAT_MAT4 
FLOAT_VEC2 
FLOAT_VEC3 
FLOAT_VEC4 
flush 
FRAGMENT_SHADER 
FRAMEBUFFER 
FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 
FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 
FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 
FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 
FRAMEBUFFER_BINDING 
FRAMEBUFFER_COMPLETE 
FRAMEBUFFER_INCOMPLETE_ATTACHMENT 
FRAMEBUFFER_INCOMPLETE_DIMENSIONS 
FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 
FRAMEBUFFER_UNSUPPORTED 
framebufferRenderbuffer 
framebufferTexture2D 
FRONT 
FRONT_AND_BACK 
FRONT_FACE 
frontFace 
FUNC_ADD 
FUNC_REVERSE_SUBTRACT 
FUNC_SUBTRACT 
GENERATE_MIPMAP_HINT 
generateMipmap 
GEQUAL 
getActiveAttrib 
getActiveUniform 
getAttachedShaders 
getAttribLocation 
getBufferParameter 
getContextAttributes 
getError 
getExtension 
getFramebufferAttachmentParameter 
getParameter 
getProgramInfoLog 
getProgramParameter 
getRenderbufferParameter 
getShaderInfoLog 
getShaderParameter 
getShaderPrecisionFormat 
getShaderSource 
getSupportedExtensions 
getTexParameter 
getUniform 
getUniformLocation 
getVertexAttrib 
getVertexAttribOffset 
GREATER 
GREEN_BITS 
HIGH_FLOAT 
HIGH_INT 
hint 
IMPLEMENTATION_COLOR_READ_FORMAT 
IMPLEMENTATION_COLOR_READ_TYPE 
INCR 
INCR_WRAP 
INT 
INT_VEC2 
INT_VEC3 
INT_VEC4 
INVALID_ENUM 
INVALID_FRAMEBUFFER_OPERATION 
INVALID_OPERATION 
INVALID_VALUE 
INVERT 
isBuffer 
isContextLost 
isEnabled 
isFramebuffer 
isProgram 
isRenderbuffer 
isShader 
isTexture 
KEEP 
length 
LEQUAL 
LESS 
LINE_LOOP 
LINE_STRIP 
LINE_WIDTH 
LINEAR 
LINEAR_MIPMAP_LINEAR 
LINEAR_MIPMAP_NEAREST 
LINES 
lineWidth 
LINK_STATUS 
linkProgram 
LOW_FLOAT 
LOW_INT 
LUMINANCE 
LUMINANCE_ALPHA 
MAX_COMBINED_TEXTURE_IMAGE_UNITS 
MAX_CUBE_MAP_TEXTURE_SIZE 
MAX_FRAGMENT_UNIFORM_VECTORS 
MAX_RENDERBUFFER_SIZE 
MAX_TEXTURE_IMAGE_UNITS 
MAX_TEXTURE_SIZE 
MAX_VARYING_VECTORS 
MAX_VERTEX_ATTRIBS 
MAX_VERTEX_TEXTURE_IMAGE_UNITS 
MAX_VERTEX_UNIFORM_VECTORS 
MAX_VIEWPORT_DIMS 
MEDIUM_FLOAT 
MEDIUM_INT 
MIRRORED_REPEAT 
name
NEAREST 
NEAREST_MIPMAP_LINEAR 
NEAREST_MIPMAP_NEAREST 
NEVER 
NICEST 
NO_ERROR 
NONE 
NOTEQUAL 
ONE 
ONE_MINUS_CONSTANT_ALPHA 
ONE_MINUS_CONSTANT_COLOR 
ONE_MINUS_DST_ALPHA 
ONE_MINUS_DST_COLOR 
ONE_MINUS_SRC_ALPHA 
ONE_MINUS_SRC_COLOR 
OUT_OF_MEMORY 
PACK_ALIGNMENT 
pixelStorei 
POINTS 
POLYGON_OFFSET_FACTOR 
POLYGON_OFFSET_FILL 
POLYGON_OFFSET_UNITS 
polygonOffset 
prototype
readPixels 
RED_BITS 
RENDERBUFFER 
RENDERBUFFER_ALPHA_SIZE 
RENDERBUFFER_BINDING 
RENDERBUFFER_BLUE_SIZE 
RENDERBUFFER_DEPTH_SIZE 
RENDERBUFFER_GREEN_SIZE 
RENDERBUFFER_HEIGHT 
RENDERBUFFER_INTERNAL_FORMAT 
RENDERBUFFER_RED_SIZE 
RENDERBUFFER_STENCIL_SIZE 
RENDERBUFFER_WIDTH 
renderbufferStorage 
RENDERER 
REPEAT 
REPLACE 
RGB 
RGB5_A1 
RGB565 
RGBA 
RGBA4 
SAMPLE_ALPHA_TO_COVERAGE 
SAMPLE_BUFFERS 
SAMPLE_COVERAGE 
SAMPLE_COVERAGE_INVERT 
SAMPLE_COVERAGE_VALUE 
sampleCoverage 
SAMPLER_2D 
SAMPLER_CUBE 
SAMPLES 
scissor 
SCISSOR_BOX 
SCISSOR_TEST 
SHADER_TYPE 
shaderSource 
SHADING_LANGUAGE_VERSION 
SHORT 
SRC_ALPHA 
SRC_ALPHA_SATURATE 
SRC_COLOR 
STATIC_DRAW 
STENCIL_ATTACHMENT 
STENCIL_BACK_FAIL 
STENCIL_BACK_FUNC 
STENCIL_BACK_PASS_DEPTH_FAIL 
STENCIL_BACK_PASS_DEPTH_PASS 
STENCIL_BACK_REF 
STENCIL_BACK_VALUE_MASK 
STENCIL_BACK_WRITEMASK 
STENCIL_BITS 
STENCIL_BUFFER_BIT 
STENCIL_CLEAR_VALUE 
STENCIL_FAIL 
STENCIL_FUNC 
STENCIL_INDEX 
STENCIL_INDEX8 
STENCIL_PASS_DEPTH_FAIL 
STENCIL_PASS_DEPTH_PASS 
STENCIL_REF 
STENCIL_TEST 
STENCIL_VALUE_MASK 
STENCIL_WRITEMASK 
stencilFunc 
stencilFuncSeparate 
stencilMask 
stencilMaskSeparate 
stencilOp 
stencilOpSeparate 
STREAM_DRAW 
SUBPIXEL_BITS 
texImage2D 
texParameterf 
texParameteri 
texSubImage2D 
TEXTURE 
TEXTURE_2D 
TEXTURE_BINDING_2D 
TEXTURE_BINDING_CUBE_MAP 
TEXTURE_CUBE_MAP 
TEXTURE_CUBE_MAP_NEGATIVE_X 
TEXTURE_CUBE_MAP_NEGATIVE_Y 
TEXTURE_CUBE_MAP_NEGATIVE_Z 
TEXTURE_CUBE_MAP_POSITIVE_X 
TEXTURE_CUBE_MAP_POSITIVE_Y 
TEXTURE_CUBE_MAP_POSITIVE_Z 
TEXTURE_MAG_FILTER 
TEXTURE_MIN_FILTER 
TEXTURE_WRAP_S 
TEXTURE_WRAP_T 
TEXTURE0 
TEXTURE1 
TEXTURE10 
TEXTURE11 
TEXTURE12 
TEXTURE13 
TEXTURE14 
TEXTURE15 
TEXTURE16 
TEXTURE17 
TEXTURE18 
TEXTURE19 
TEXTURE2 
TEXTURE20 
TEXTURE21 
TEXTURE22 
TEXTURE23 
TEXTURE24 
TEXTURE25 
TEXTURE26 
TEXTURE27 
TEXTURE28 
TEXTURE29 
TEXTURE3 
TEXTURE30 
TEXTURE31 
TEXTURE4 
TEXTURE5 
TEXTURE6 
TEXTURE7 
TEXTURE8 
TEXTURE9 
TRIANGLE_FAN 
TRIANGLE_STRIP 
TRIANGLES 
uniform1f 
uniform1fv 
uniform1i 
uniform1iv 
uniform2f 
uniform2fv 
uniform2i 
uniform2iv 
uniform3f 
uniform3fv 
uniform3i 
uniform3iv 
uniform4f 
uniform4fv 
uniform4i 
uniform4iv 
uniformMatrix2fv 
uniformMatrix3fv 
uniformMatrix4fv 
UNPACK_ALIGNMENT 
UNPACK_COLORSPACE_CONVERSION_WEBGL 
UNPACK_FLIP_Y_WEBGL 
UNPACK_PREMULTIPLY_ALPHA_WEBGL 
UNSIGNED_BYTE 
UNSIGNED_INT 
UNSIGNED_SHORT 
UNSIGNED_SHORT_4_4_4_4 
UNSIGNED_SHORT_5_5_5_1 
UNSIGNED_SHORT_5_6_5 
useProgram 
VALIDATE_STATUS 
validateProgram 
VENDOR 
VERSION 
VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 
VERTEX_ATTRIB_ARRAY_ENABLED 
VERTEX_ATTRIB_ARRAY_NORMALIZED 
VERTEX_ATTRIB_ARRAY_POINTER 
VERTEX_ATTRIB_ARRAY_SIZE 
VERTEX_ATTRIB_ARRAY_STRIDE 
VERTEX_ATTRIB_ARRAY_TYPE 
VERTEX_SHADER 
vertexAttrib1f 
vertexAttrib1fv 
vertexAttrib2f 
vertexAttrib2fv 
vertexAttrib3f 
vertexAttrib3fv 
vertexAttrib4f 
vertexAttrib4fv 
vertexAttribPointer 
viewport 
VIEWPORT 
ZERO 
WebGLShader
constructor
length 
name
prototype
WebGLShaderPrecisionFormat
constructor
length 
name
precision
prototype
rangeMax
rangeMin